home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 10 / AACD 10.iso / AACD / Games / MAME / src / drivers / namcos1.c < prev    next >
C/C++ Source or Header  |  2000-05-04  |  101KB  |  2,441 lines

  1. /***********************************************************************
  2.  
  3. Namco System 1
  4.  
  5. Preliminary driver by:
  6. Ernesto Corvi
  7. ernesto@imagina.com
  8.  
  9. Updates by:
  10. Vernon C. Brooks
  11.  
  12.  
  13. Notes:
  14. - The berabohm buttons don't work too well. The real thing has a special
  15.   pressure sensitive button, with two switches. The harder you push the
  16.   button, the faster the two switches are closed one after another.
  17.   Due to MAME's limited input sample rate (once per frame) it is difficult
  18.   to measure the time between the two.
  19.  
  20.  
  21.  
  22. Namco System 1 hardware
  23. =======================
  24.  
  25. Processors:
  26.  
  27. 6809  - Main CPU
  28. 6809  - Sub CPU
  29. 6809  - Sound CPU (PSG,FM)
  30. 63701 - MCU (input,EEPROM,DAC)
  31.  
  32. Inter-processor communication is done via a 2K shared memory area.
  33.  
  34. Bankswitching:
  35.  
  36. Main/Sub - a 10-bit value is written to location Ex00 to select the 8K
  37. bank (RAM or PRG0-PRG7) which is accessed at offset x000. (x is even)
  38.  
  39. Sound - a 3-bit value is written to location C000 or C001, bits 4-6 to
  40. select the 16K bank (SND0-SND1) which is accessed at offset 0000.
  41.  
  42. MCU - a 8-bit value is written to location D800 to select the 32K bank
  43. (VOI0-VOI5) which is accessed at offset 4000. Bits 2-7 are a bitmask
  44. which specify the ROM to access and bits 0-1 specify the ROM offset.
  45.  
  46. Graphics:
  47.  
  48. Visible screen resolution: 288x244 pixels (36x28 tiles)
  49.  
  50. 3 scrolling 64x64 tilemapped playfields
  51. 1 scrolling 64x32 tilemapped playfield
  52. 2 fixed 36x28 tilemapped playfields
  53.  
  54. Each playfield uses one of 8 color palettes, can be enabled or disabled,
  55. and has programmable priorities.
  56.  
  57. Each tile is a 8x8, 8 bit-per-pixel character from a selection of up to
  58. 16384 characters (CHR0-CHR7). A separate 1 bit-per-pixel character mask
  59. (CHR8) defines the character shape.
  60.  
  61. 127 displayable 32x32, 4 bit-per-pixel sprites from a selection of up to
  62. 2048 sprites (OBJ0-OBJ7). Each sprite uses one of 127 color palettes or
  63. a special shadow/highlight effect and has programmable priorities and
  64. x-y flipping. Sprites may also be displayed as a smaller portion of a
  65. 32x32 object with a programmable size and position. The height and width
  66. are programmed separately and may be 4,8,16,or 32 pixels.
  67.  
  68. 3 24-bit programmable RGB palette tables, 8 bits per color as follows:
  69.  
  70. 127 16-color entries for the sprites
  71. 8 256-color entries for the playfields
  72. 8 256-color entries for the playfields shadow/highlight effects
  73.  
  74. Sound:
  75.  
  76. Namco custom 8 channel 16-bit stereo PSG for sound effects
  77. registor array based 2 channel 8-bit DAC for voice
  78. Yamaha YM2151+YM3012 FM chip for background music
  79.  
  80. Controls:
  81.  
  82. The standard hardware supports one or two 8-way joysticks with up to
  83. three buttons for each player, two start buttons, a service switch, two
  84. coin slots, and one dipswitch block. Game settings are accessed via
  85. service mode and are saved in EEPROM.
  86.  
  87. Games:
  88.  
  89. Date  Name                                    Key  Screen
  90. ----- ------------------------------------- ---- ------
  91.  4/87 Yokai Douchuuki / Shadowland            NONE H
  92.  6/87 Dragon Spirit (old version)            136  V
  93. ??/87 Dragon Spirit (new version)            136  V
  94.  7/87 Blazer                                144  V
  95.  9/87 Quester                                A     V
  96. ??/87 Quester (special edition)             A     V
  97. 11/87 Pac-Mania                             151  V-FLIP
  98. 11/87 Pac-Mania (Japanese version)            151  V
  99. 12/87 Galaga '88                            153  V-FLIP
  100. 12/87 Galaga '88 (Japanese version)         153  V
  101.  3/88 World Stadium                         154  H
  102.  5/88 Beraboh Man                            B     H
  103. ??/88 Beraboh Man (standard NS1 hardware)    NONE H
  104.  7/88 Marchen Maze / Alice In Wonderland    152  H
  105.  8/88 Bakutotsu Kijuutei / Baraduke 2        155  H
  106. 10/88 World Court                            143  H
  107. 11/88 Splatter House                        181  H
  108. 12/88 Face Off                                C     H
  109.  2/89 Rompers                                182  V
  110.  3/89 Blast Off                             183  V
  111.  7/89 World Stadium '89                     184  H
  112. 12/89 Dangerous Seed                        308  V
  113.  7/90 World Stadium '90                     310  H
  114. 10/90 Pistol Daimyo no Bouken                309  H-FLIP
  115. 11/90 Souko Ban Deluxe                        311  H-FLIP
  116. ??/90 Puzzle Club (prototype)                ?     V
  117. 12/91 Tank Force                            185  H-FLIP
  118.  
  119. A - uses sub board with paddle control(s)
  120. B - uses sub board with pressure sensitive controls
  121. C - uses sub board with support for player 3 and 4 controls
  122.  
  123. ***********************************************************************/
  124.  
  125. #include "driver.h"
  126. #include "vidhrdw/generic.h"
  127. #include "cpu/m6809/m6809.h"
  128. #include "cpu/m6800/m6800.h"
  129.  
  130. /* from vidhrdw */
  131. extern void namcos1_vh_screenrefresh(struct osd_bitmap *bitmap,int full_refresh);
  132. extern void namcos1_vh_convert_color_prom(unsigned char *palette, unsigned short *colortable,const unsigned char *color_prom);
  133. extern int namcos1_vh_start(void);
  134. extern void namcos1_vh_stop(void);
  135.  
  136. /* from machine */
  137. WRITE_HANDLER( namcos1_bankswitch_w );
  138. WRITE_HANDLER( namcos1_subcpu_bank_w );
  139.  
  140. READ_HANDLER( namcos1_0_banked_area0_r );
  141. READ_HANDLER( namcos1_0_banked_area1_r );
  142. READ_HANDLER( namcos1_0_banked_area2_r );
  143. READ_HANDLER( namcos1_0_banked_area3_r );
  144. READ_HANDLER( namcos1_0_banked_area4_r );
  145. READ_HANDLER( namcos1_0_banked_area5_r );
  146. READ_HANDLER( namcos1_0_banked_area6_r );
  147. READ_HANDLER( namcos1_0_banked_area7_r );
  148. READ_HANDLER( namcos1_1_banked_area0_r );
  149. READ_HANDLER( namcos1_1_banked_area1_r );
  150. READ_HANDLER( namcos1_1_banked_area2_r );
  151. READ_HANDLER( namcos1_1_banked_area3_r );
  152. READ_HANDLER( namcos1_1_banked_area4_r );
  153. READ_HANDLER( namcos1_1_banked_area5_r );
  154. READ_HANDLER( namcos1_1_banked_area6_r );
  155. READ_HANDLER( namcos1_1_banked_area7_r );
  156. WRITE_HANDLER( namcos1_0_banked_area0_w );
  157. WRITE_HANDLER( namcos1_0_banked_area1_w );
  158. WRITE_HANDLER( namcos1_0_banked_area2_w );
  159. WRITE_HANDLER( namcos1_0_banked_area3_w );
  160. WRITE_HANDLER( namcos1_0_banked_area4_w );
  161. WRITE_HANDLER( namcos1_0_banked_area5_w );
  162. WRITE_HANDLER( namcos1_0_banked_area6_w );
  163. WRITE_HANDLER( namcos1_1_banked_area0_w );
  164. WRITE_HANDLER( namcos1_1_banked_area1_w );
  165. WRITE_HANDLER( namcos1_1_banked_area2_w );
  166. WRITE_HANDLER( namcos1_1_banked_area3_w );
  167. WRITE_HANDLER( namcos1_1_banked_area4_w );
  168. WRITE_HANDLER( namcos1_1_banked_area5_w );
  169. WRITE_HANDLER( namcos1_1_banked_area6_w );
  170. WRITE_HANDLER( namcos1_cpu_control_w );
  171. WRITE_HANDLER( namcos1_sound_bankswitch_w );
  172.  
  173. WRITE_HANDLER( namcos1_mcu_bankswitch_w );
  174. WRITE_HANDLER( namcos1_mcu_patch_w );
  175.  
  176. extern void init_namcos1( void );
  177.  
  178. extern void init_shadowld( void );
  179. extern void init_dspirit( void );
  180. extern void init_quester( void );
  181. extern void init_blazer( void );
  182. extern void init_pacmania( void );
  183. extern void init_galaga88( void );
  184. extern void init_ws( void );
  185. extern void init_berabohm( void );
  186. extern void init_alice( void );
  187. extern void init_bakutotu( void );
  188. extern void init_wldcourt( void );
  189. extern void init_splatter( void );
  190. extern void init_faceoff( void );
  191. extern void init_rompers( void );
  192. extern void init_blastoff( void );
  193. extern void init_ws89( void );
  194. extern void init_dangseed( void );
  195. extern void init_ws90( void );
  196. extern void init_pistoldm( void );
  197. extern void init_soukobdx( void );
  198. extern void init_puzlclub( void );
  199. extern void init_tankfrce( void );
  200.  
  201.  
  202. static unsigned char *nvram;
  203. static size_t nvram_size;
  204.  
  205. static void nvram_handler(void *file,int read_or_write)
  206. {
  207.     if (read_or_write)
  208.         osd_fwrite(file,nvram,nvram_size);
  209.     else
  210.     {
  211.         if (file)
  212.             osd_fread(file,nvram,nvram_size);
  213.     }
  214. }
  215.  
  216. /**********************************************************************/
  217.  
  218. static struct MemoryReadAddress main_readmem[] =
  219. {
  220.     { 0x0000, 0x1fff, namcos1_0_banked_area0_r },
  221.     { 0x2000, 0x3fff, namcos1_0_banked_area1_r },
  222.     { 0x4000, 0x5fff, namcos1_0_banked_area2_r },
  223.     { 0x6000, 0x7fff, namcos1_0_banked_area3_r },
  224.     { 0x8000, 0x9fff, namcos1_0_banked_area4_r },
  225.     { 0xa000, 0xbfff, namcos1_0_banked_area5_r },
  226.     { 0xc000, 0xdfff, namcos1_0_banked_area6_r },
  227.     { 0xe000, 0xffff, namcos1_0_banked_area7_r },
  228.     { -1 }    /* end of table */
  229. };
  230.  
  231. static struct MemoryWriteAddress main_writemem[] =
  232. {
  233.     { 0x0000, 0x1fff, namcos1_0_banked_area0_w },
  234.     { 0x2000, 0x3fff, namcos1_0_banked_area1_w },
  235.     { 0x4000, 0x5fff, namcos1_0_banked_area2_w },
  236.     { 0x6000, 0x7fff, namcos1_0_banked_area3_w },
  237.     { 0x8000, 0x9fff, namcos1_0_banked_area4_w },
  238.     { 0xa000, 0xbfff, namcos1_0_banked_area5_w },
  239.     { 0xc000, 0xdfff, namcos1_0_banked_area6_w },
  240.     { 0xe000, 0xefff, namcos1_bankswitch_w },
  241.     { 0xf000, 0xf000, namcos1_cpu_control_w },
  242.     { 0xf200, 0xf200, MWA_NOP }, /* watchdog? */
  243. //    { 0xf400, 0xf400, MWA_NOP }, /* unknown */
  244. //    { 0xf600, 0xf600, MWA_NOP }, /* unknown */
  245.     { 0xfc00, 0xfc01, namcos1_subcpu_bank_w },
  246.     { -1 }    /* end of table */
  247. };
  248.  
  249. static struct MemoryReadAddress sub_readmem[] =
  250. {
  251.     { 0x0000, 0x1fff, namcos1_1_banked_area0_r },
  252.     { 0x2000, 0x3fff, namcos1_1_banked_area1_r },
  253.     { 0x4000, 0x5fff, namcos1_1_banked_area2_r },
  254.     { 0x6000, 0x7fff, namcos1_1_banked_area3_r },
  255.     { 0x8000, 0x9fff, namcos1_1_banked_area4_r },
  256.     { 0xa000, 0xbfff, namcos1_1_banked_area5_r },
  257.     { 0xc000, 0xdfff, namcos1_1_banked_area6_r },
  258.     { 0xe000, 0xffff, namcos1_1_banked_area7_r },
  259.     { -1 }    /* end of table */
  260. };
  261.  
  262. static struct MemoryWriteAddress sub_writemem[] =
  263. {
  264.     { 0xe000, 0xefff, namcos1_bankswitch_w },
  265.     { 0x0000, 0x1fff, namcos1_1_banked_area0_w },
  266.     { 0x2000, 0x3fff, namcos1_1_banked_area1_w },
  267.     { 0x4000, 0x5fff, namcos1_1_banked_area2_w },
  268.     { 0x6000, 0x7fff, namcos1_1_banked_area3_w },
  269.     { 0x8000, 0x9fff, namcos1_1_banked_area4_w },
  270.     { 0xa000, 0xbfff, namcos1_1_banked_area5_w },
  271.     { 0xc000, 0xdfff, namcos1_1_banked_area6_w },
  272.     { 0xf000, 0xf000, MWA_NOP }, /* IO Chip */
  273.     { 0xf200, 0xf200, MWA_NOP }, /* watchdog? */
  274. //    { 0xf400, 0xf400, MWA_NOP }, /* unknown */
  275. //    { 0xf600, 0xf600, MWA_NOP }, /* unknown */
  276.     { -1 }    /* end of table */
  277. };
  278.  
  279. static struct MemoryReadAddress sound_readmem[] =
  280. {
  281.     { 0x0000, 0x3fff, MRA_BANK1 },    /* Banked ROMs */
  282.     { 0x4000, 0x4001, YM2151_status_port_0_r },
  283.     { 0x5000, 0x50ff, namcos1_wavedata_r }, /* PSG ( Shared ) */
  284.     { 0x5100, 0x513f, namcos1_sound_r },    /* PSG ( Shared ) */
  285.     { 0x5140, 0x54ff, MRA_RAM },    /* Sound RAM 1 - ( Shared ) */
  286.     { 0x7000, 0x77ff, MRA_BANK2 },    /* Sound RAM 2 - ( Shared ) */
  287.     { 0x8000, 0x9fff, MRA_RAM },    /* Sound RAM 3 */
  288.     { 0xc000, 0xffff, MRA_ROM },
  289.     { -1 }    /* end of table */
  290. };
  291.  
  292. static struct MemoryWriteAddress sound_writemem[] =
  293. {
  294.     { 0x0000, 0x3fff, MWA_ROM },    /* Banked ROMs */
  295.     { 0x4000, 0x4000, YM2151_register_port_0_w },
  296.     { 0x4001, 0x4001, YM2151_data_port_0_w },
  297.     { 0x5000, 0x50ff, namcos1_wavedata_w,&namco_wavedata }, /* PSG ( Shared ) */
  298.     { 0x5100, 0x513f, namcos1_sound_w,&namco_soundregs },    /* PSG ( Shared ) */
  299.     { 0x5140, 0x54ff, MWA_RAM },    /* Sound RAM 1 - ( Shared ) */
  300.     { 0x7000, 0x77ff, MWA_BANK2 },    /* Sound RAM 2 - ( Shared ) */
  301.     { 0x8000, 0x9fff, MWA_RAM },    /* Sound RAM 3 */
  302.     { 0xc000, 0xc001, namcos1_sound_bankswitch_w }, /* bank selector */
  303.     { 0xd001, 0xd001, MWA_NOP },    /* watchdog? */
  304.     { 0xe000, 0xe000, MWA_NOP },    /* IRQ clear ? */
  305.     { -1 }    /* end of table */
  306. };
  307.  
  308. static READ_HANDLER( dsw_r )
  309. {
  310.     int ret = readinputport(2);
  311.  
  312.     if (offset == 0)
  313.         ret >>= 4;
  314.  
  315.     return 0xf0 | (ret & 0x0f);
  316. }
  317.  
  318. static WRITE_HANDLER( namcos1_coin_w )
  319. {
  320.     coin_lockout_global_w(0,~data & 1);
  321.     coin_counter_w(0,data & 2);
  322.     coin_counter_w(1,data & 4);
  323. }
  324.  
  325. static int dac0_value ,dac1_value, dac0_gain=0, dac1_gain=0;
  326.  
  327. static void namcos1_update_DACs(void)
  328. {
  329.     DAC_signed_data_16_w(0,0x8000+(dac0_value * dac0_gain)+(dac1_value * dac1_gain));
  330. }
  331.  
  332. static WRITE_HANDLER( namcos1_dac_gain_w )
  333. {
  334.     int value;
  335.     /* DAC0 */
  336.     value = (data&1)|((data>>1)&2); /* GAIN0,GAIN1 */
  337.     dac0_gain = 0x0101 * (value+1) /4 /2;
  338.     /* DAC1 */
  339.     value = (data>>3)&3; /* GAIN2,GAIN3 */
  340.     dac1_gain = 0x0101 * (value+1) / 4 /2;
  341.     namcos1_update_DACs();
  342. }
  343.  
  344. static WRITE_HANDLER( namcos1_dac0_w )
  345. {
  346.     dac0_value = data-0x80; /* shift zero point */
  347.     namcos1_update_DACs();
  348. }
  349.  
  350. static WRITE_HANDLER( namcos1_dac1_w )
  351. {
  352.     dac1_value = data-0x80; /* shift zero point */
  353.     namcos1_update_DACs();
  354. }
  355.  
  356. static int num=0, strobe=0;
  357.  
  358. static READ_HANDLER( quester_in0_r )
  359. {
  360.     int ret;
  361.  
  362.     if (!num)
  363.         ret = (readinputport(0)&0x90) | strobe | (readinputport(4)&0x0f);
  364.     else
  365.         ret = (readinputport(0)&0x90) | strobe | (readinputport(5)&0x0f);
  366.  
  367.     strobe ^= 0x40;
  368.  
  369.     return ret;
  370. }
  371.  
  372. static READ_HANDLER( quester_in1_r )
  373. {
  374.     int ret;
  375.  
  376.     if (!num)
  377.         ret = (readinputport(1)&0x90) | num | (readinputport(4)>>4);
  378.     else
  379.         ret = (readinputport(1)&0x90) | num | (readinputport(5)>>4);
  380.  
  381.     if (!strobe) num ^= 0x20;
  382.  
  383.     return ret;
  384. }
  385.  
  386. static READ_HANDLER( faceoff_in0_r )
  387. {
  388.     int ret;
  389.  
  390.     if (!num)
  391.         ret = (readinputport(0)&0x80) | (readinputport(4)&0x1f);
  392.     else if (num==3)
  393.         ret = (readinputport(0)&0x80) | (readinputport(5)&0x1f);
  394.     else
  395.         ret = (readinputport(0)&0x80) | (readinputport(6)&0x1f);
  396.  
  397.     return ret;
  398. }
  399.  
  400. static READ_HANDLER( faceoff_in1_r )
  401. {
  402.     int ret;
  403.  
  404.     if (strobe)
  405.     {
  406.         if (!num)
  407.             ret = (readinputport(1)&0x80) | strobe | ((readinputport(7)&0x07)<<3);
  408.         else
  409.             ret = (readinputport(1)&0x80) | strobe | (readinputport(7)&0x18);
  410.     }
  411.     else
  412.     {
  413.         if (num==0) num=3;
  414.         else if (num==3) num=4;
  415.         else if (num==4) num=0;
  416.         ret = (readinputport(1)&0x80) | num;
  417.     }
  418.  
  419.     strobe ^= 0x40;
  420.  
  421.     return ret;
  422. }
  423.  
  424. static struct MemoryReadAddress mcu_readmem[] =
  425. {
  426.     { 0x0000, 0x001f, hd63701_internal_registers_r },
  427.     { 0x0080, 0x00ff, MRA_RAM }, /* built in RAM */
  428.     { 0x1400, 0x1400, input_port_0_r },
  429.     { 0x1401, 0x1401, input_port_1_r },
  430.     { 0x1000, 0x1002, dsw_r },
  431.     { 0x4000, 0xbfff, MRA_BANK4 }, /* banked ROM */
  432.     { 0xc000, 0xc7ff, MRA_BANK3 },
  433.     { 0xc800, 0xcfff, MRA_RAM }, /* EEPROM */
  434.     { 0xf000, 0xffff, MRA_ROM },
  435.     { -1 }    /* end of table */
  436. };
  437.  
  438. static struct MemoryWriteAddress mcu_writemem[] =
  439. {
  440.     { 0x0000, 0x001f, hd63701_internal_registers_w },
  441.     { 0x0080, 0x00ff, MWA_RAM }, /* built in RAM */
  442.     { 0x4000, 0xbfff, MWA_ROM },
  443.     { 0xc000, 0xc000, namcos1_mcu_patch_w },
  444.     { 0xc000, 0xc7ff, MWA_BANK3 },
  445.     { 0xc800, 0xcfff, MWA_RAM, &nvram, &nvram_size }, /* EEPROM */
  446.     { 0xd000, 0xd000, namcos1_dac0_w },
  447.     { 0xd400, 0xd400, namcos1_dac1_w },
  448.     { 0xd800, 0xd800, namcos1_mcu_bankswitch_w }, /* BANK selector */
  449.     { 0xf000, 0xf000, MWA_NOP }, /* IRQ clear ? */
  450.     { -1 }    /* end of table */
  451. };
  452.  
  453. static struct MemoryReadAddress quester_mcu_readmem[] =
  454. {
  455.     { 0x0000, 0x001f, hd63701_internal_registers_r },
  456.     { 0x0080, 0x00ff, MRA_RAM }, /* built in RAM */
  457.     { 0x1400, 0x1400, quester_in0_r },
  458.     { 0x1401, 0x1401, quester_in1_r },
  459.     { 0x1000, 0x1002, dsw_r },
  460.     { 0x4000, 0xbfff, MRA_BANK4 }, /* banked ROM */
  461.     { 0xc000, 0xc7ff, MRA_BANK3 },
  462.     { 0xc800, 0xcfff, MRA_RAM }, /* EEPROM */
  463.     { 0xf000, 0xffff, MRA_ROM },
  464.     { -1 }    /* end of table */
  465. };
  466.  
  467. static struct MemoryReadAddress faceoff_mcu_readmem[] =
  468. {
  469.     { 0x0000, 0x001f, hd63701_internal_registers_r },
  470.     { 0x0080, 0x00ff, MRA_RAM }, /* built in RAM */
  471.     { 0x1400, 0x1400, faceoff_in0_r },
  472.     { 0x1401, 0x1401, faceoff_in1_r },
  473.     { 0x1000, 0x1002, dsw_r },
  474.     { 0x4000, 0xbfff, MRA_BANK4 }, /* banked ROM */
  475.     { 0xc000, 0xc7ff, MRA_BANK3 },
  476.     { 0xc800, 0xcfff, MRA_RAM }, /* EEPROM */
  477.     { 0xf000, 0xffff, MRA_ROM },
  478.     { -1 }    /* end of table */
  479. };
  480.  
  481. static struct IOReadPort mcu_readport[] =
  482. {
  483.     { HD63701_PORT1, HD63701_PORT1, input_port_3_r },
  484.     { -1 }    /* end of table */
  485. };
  486.  
  487. static struct IOWritePort mcu_writeport[] =
  488. {
  489.     { HD63701_PORT1, HD63701_PORT1, namcos1_coin_w },
  490.     { HD63701_PORT2, HD63701_PORT2, namcos1_dac_gain_w },
  491.     { -1 }    /* end of table */
  492. };
  493.  
  494.  
  495.  
  496. /* Standard Namco System 1 input port definition */
  497. INPUT_PORTS_START( ns1 )
  498.     PORT_START        /* IN0 */
  499.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT )
  500.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )
  501.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )
  502.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )
  503.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
  504.     PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
  505.     PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 )
  506.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
  507.  
  508.     PORT_START        /* IN1 */
  509.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
  510.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_PLAYER2 )
  511.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_PLAYER2 )
  512.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP      | IPF_PLAYER2 )
  513.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
  514.     PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
  515.     PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
  516.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
  517.  
  518.     PORT_START        /* DSW1 */
  519.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
  520.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
  521.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
  522.     PORT_DIPNAME( 0x08, 0x08, "Auto Data Sampling" )
  523.     PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  524.     PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  525.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
  526.     PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
  527.     PORT_DIPNAME( 0x40, 0x40, "Freeze" )
  528.     PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  529.     PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  530.     PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  531.  
  532.     PORT_START        /* IN2 : mcu PORT2 */
  533.     PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin lockout */
  534.     PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin counter 1 */
  535.     PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin counter 2 */
  536.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  537.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 )
  538.     PORT_BITX(0x20, IP_ACTIVE_LOW, IPT_SERVICE, "Service Button", KEYCODE_F1, IP_JOY_NONE )
  539.     PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 )
  540.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
  541. INPUT_PORTS_END
  542.  
  543. /* Dragon Spirit input port definition - dip switches are different */
  544. INPUT_PORTS_START( dspirit )
  545.     PORT_START        /* IN0 */
  546.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT )
  547.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )
  548.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )
  549.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )
  550.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
  551.     PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
  552.     PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 )
  553.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
  554.  
  555.     PORT_START        /* IN1 */
  556.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
  557.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_PLAYER2 )
  558.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_PLAYER2 )
  559.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP      | IPF_PLAYER2 )
  560.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
  561.     PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
  562.     PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_PLAYER2 )
  563.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
  564.  
  565.     PORT_START        /* DSW1 */
  566.     PORT_DIPNAME( 0x7f, 0x7f, "Life" )
  567.     PORT_DIPSETTING(    0x7f, "2" )
  568.     PORT_DIPSETTING(    0x16, "3" )
  569.     PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  570.  
  571.     PORT_START        /* IN2 */
  572.     PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin lockout */
  573.     PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin counter 1 */
  574.     PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin counter 2 */
  575.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  576.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 )
  577.     PORT_BITX(0x20, IP_ACTIVE_LOW, IPT_SERVICE, "Service Button", KEYCODE_F1, IP_JOY_NONE )
  578.     PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 )
  579.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
  580. INPUT_PORTS_END
  581.  
  582. /* Quester input port definition - paddle controls */
  583. INPUT_PORTS_START( quester )
  584.     PORT_START        /* IN0 */
  585.     PORT_BIT( 0x0f, IP_ACTIVE_LOW, IPT_UNUSED )     /* paddle */
  586.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
  587.     PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
  588.     PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  589.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
  590.  
  591.     PORT_START        /* IN1 */
  592.     PORT_BIT( 0x0f, IP_ACTIVE_LOW, IPT_UNUSED )     /* paddle */
  593.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
  594.     PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
  595.     PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  596.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
  597.  
  598.     PORT_START        /* DSW1 */
  599.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
  600.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
  601.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
  602.     PORT_DIPNAME( 0x08, 0x08, "Auto Data Sampling" )
  603.     PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  604.     PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  605.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
  606.     PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
  607.     PORT_DIPNAME( 0x40, 0x40, "Freeze" )
  608.     PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  609.     PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  610.     PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  611.  
  612.     PORT_START        /* IN2 */
  613.     PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin lockout */
  614.     PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin counter 1 */
  615.     PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin counter 2 */
  616.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  617.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 )
  618.     PORT_BITX(0x20, IP_ACTIVE_LOW, IPT_SERVICE, "Service Button", KEYCODE_F1, IP_JOY_NONE )
  619.     PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 )
  620.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
  621.  
  622.     PORT_START        /* IN4 - fake input port for player 1 paddle */
  623.     PORT_ANALOG( 0xff, 0x00, IPT_DIAL, 30, 15, 0, 0 )
  624.  
  625.     PORT_START        /* IN5 - fake input port for player 2 paddle */
  626.     PORT_ANALOG( 0xff, 0x00, IPT_DIAL | IPF_PLAYER2, 30, 15, 0, 0 )
  627. INPUT_PORTS_END
  628.  
  629. /* Face Off input port definition - 4 player controls */
  630. INPUT_PORTS_START( faceoff )
  631.     PORT_START        /* IN0 */
  632.     PORT_BIT( 0x7f, IP_ACTIVE_LOW, IPT_UNUSED )
  633.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
  634.  
  635.     PORT_START        /* IN1 */
  636.     PORT_BIT( 0x7f, IP_ACTIVE_LOW, IPT_UNUSED )
  637.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
  638.  
  639.     PORT_START        /* DSW1 */
  640.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
  641.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
  642.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
  643.     PORT_DIPNAME( 0x08, 0x08, "Auto Data Sampling" )
  644.     PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  645.     PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  646.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
  647.     PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
  648.     PORT_DIPNAME( 0x40, 0x40, "Freeze" )
  649.     PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  650.     PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  651.     PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  652.  
  653.     PORT_START        /* IN2 */
  654.     PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin lockout */
  655.     PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin counter 1 */
  656.     PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin counter 2 */
  657.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  658.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 )
  659.     PORT_BITX(0x20, IP_ACTIVE_LOW, IPT_SERVICE, "Service Button", KEYCODE_F1, IP_JOY_NONE )
  660.     PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 )
  661.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
  662.  
  663.     PORT_START        /* IN4 - fake input port for player 1 */
  664.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT )
  665.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )
  666.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )
  667.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )
  668.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
  669.     PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
  670.  
  671.     PORT_START        /* IN5 - fake input port for player 2 */
  672.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
  673.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_PLAYER2 )
  674.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_PLAYER2 )
  675.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP      | IPF_PLAYER2 )
  676.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1          | IPF_PLAYER2 )
  677.     PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
  678.  
  679.     PORT_START        /* IN6 - fake input port for player 3 */
  680.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER3 )
  681.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_PLAYER3 )
  682.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_PLAYER3 )
  683.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP      | IPF_PLAYER3 )
  684.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1          | IPF_PLAYER3 )
  685.     PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
  686.  
  687.     PORT_START        /* IN7 - fake input port for player 4 */
  688.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_PLAYER4 )
  689.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_PLAYER4 )
  690.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_PLAYER4 )
  691.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP      | IPF_PLAYER4 )
  692.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1          | IPF_PLAYER4 )
  693.     PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
  694. INPUT_PORTS_END
  695.  
  696. /* Beraboh Man input port definition - controls are different */
  697. INPUT_PORTS_START( berabohm )
  698.     PORT_START        /* IN0 */
  699.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT )
  700.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )
  701.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )
  702.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )
  703.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
  704.     PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
  705.     PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  706.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
  707.  
  708.     PORT_START        /* IN1 */
  709.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_COCKTAIL )
  710.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_COCKTAIL )
  711.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_COCKTAIL )
  712.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP      | IPF_COCKTAIL )
  713.     PORT_BIT( 0x70, IP_ACTIVE_LOW, IPT_SPECIAL )    /* timing from the buttons interface */
  714.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
  715.  
  716.     PORT_START        /* DSW1 */
  717.     PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
  718.     PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
  719.     PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
  720.     PORT_DIPNAME( 0x08, 0x08, "Auto Data Sampling" )
  721.     PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  722.     PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  723.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
  724.     PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
  725.     PORT_DIPNAME( 0x40, 0x40, "Freeze" )
  726.     PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  727.     PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  728.     PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  729.  
  730.     PORT_START        /* IN2 */
  731.     PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin lockout */
  732.     PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin counter 1 */
  733.     PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SPECIAL )    /* OUT:coin counter 2 */
  734.     PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  735.     PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 )
  736.     PORT_BITX(0x20, IP_ACTIVE_LOW, IPT_SERVICE, "Service Button", KEYCODE_F1, IP_JOY_NONE )
  737.     PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 )
  738.     PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
  739.  
  740.     /*
  741.     buttons (pressure sensitive)
  742.     each button has two switches: the first is closed as soon as the button is
  743.     pressed, the second a little later, depending on how hard the button is
  744.     pressed.
  745.     bits 0-5 control strength (0x00 = max 0x3f = min)
  746.     bit 6 indicates the button is pressed
  747.     bit 7 is not actually read by the game but I use it to simulate the second
  748.           switch
  749.     */
  750.     PORT_START
  751.     PORT_BIT( 0x3f, 0x00, IPT_SPECIAL )
  752.     PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON3 )
  753.     PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON4 )
  754.  
  755.     PORT_START
  756.     PORT_BIT( 0x3f, 0x00, IPT_SPECIAL )
  757.     PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON1 )
  758.     PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON2 )
  759.  
  760.     PORT_START
  761.     PORT_BIT( 0x3f, 0x00, IPT_SPECIAL )
  762.     PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON3 | IPF_COCKTAIL )
  763.     PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON4 | IPF_COCKTAIL )
  764.  
  765.     PORT_START
  766.     PORT_BIT( 0x3f, 0x00, IPT_SPECIAL )
  767.     PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_COCKTAIL )
  768.     PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_COCKTAIL )
  769. INPUT_PORTS_END
  770.  
  771.  
  772.  
  773. static struct GfxLayout charlayout =
  774. {
  775.     8,8,    /* 8*8 characters */
  776.     16384,    /* 16384 characters max */
  777.     1,        /* 1 bit per pixel */
  778.     { 0 },    /* bitplanes offset */
  779.     { 0, 1, 2, 3, 4, 5, 6, 7 },
  780.     { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
  781.     8*8     /* every char takes 8 consecutive bytes */
  782. };
  783.  
  784. static struct GfxLayout tilelayout =
  785. {
  786.     8,8,    /* 8*8 characters */
  787.     16384,    /* 16384 characters max */
  788.     8,        /* 8 bits per pixel */
  789.     { 0, 1, 2, 3, 4, 5, 6, 7 },     /* bitplanes offset */
  790.     { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
  791.     { 0*64, 1*64, 2*64, 3*64, 4*64, 5*64, 6*64, 7*64 },
  792.     64*8    /* every char takes 64 consecutive bytes */
  793. };
  794.  
  795. static struct GfxLayout spritelayout =
  796. {
  797.     32,32,    /* 32*32 sprites */
  798.     2048,    /* 2048 sprites max */
  799.     4,        /* 4 bits per pixel */
  800.     { 0, 1, 2, 3 },  /* the bitplanes are packed */
  801.     {  0*4,  1*4,  2*4,  3*4,  4*4,  5*4,  6*4,  7*4,
  802.        8*4,  9*4, 10*4, 11*4, 12*4, 13*4, 14*4, 15*4,
  803.      256*4,257*4,258*4,259*4,260*4,261*4,262*4,263*4,
  804.      264*4,265*4,266*4,267*4,268*4,269*4,270*4,271*4},
  805.     { 0*4*16, 1*4*16,  2*4*16,    3*4*16,  4*4*16,  5*4*16,  6*4*16,    7*4*16,
  806.       8*4*16, 9*4*16, 10*4*16, 11*4*16, 12*4*16, 13*4*16, 14*4*16, 15*4*16,
  807.      32*4*16,33*4*16, 34*4*16, 35*4*16, 36*4*16, 37*4*16, 38*4*16, 39*4*16,
  808.      40*4*16,41*4*16, 42*4*16, 43*4*16, 44*4*16, 45*4*16, 46*4*16, 47*4*16 },
  809.     32*4*8*4  /* every sprite takes 512 consecutive bytes */
  810. };
  811.  
  812. static struct GfxDecodeInfo gfxdecodeinfo[] =
  813. {
  814.     { REGION_GFX1, 0, &charlayout,         0,   1 },    /* character mask */
  815.     { REGION_GFX2, 0, &tilelayout,    128*16,   6 },    /* characters */
  816.     { REGION_GFX3, 0, &spritelayout,     0, 128 },    /* sprites 32/16/8/4 dots */
  817.     { -1 } /* end of array */
  818. };
  819.  
  820. static void namcos1_sound_interrupt( int irq )
  821. {
  822.     cpu_set_irq_line( 2, M6809_FIRQ_LINE , irq ? ASSERT_LINE : CLEAR_LINE);
  823. }
  824.  
  825. static struct YM2151interface ym2151_interface =
  826. {
  827.     1,            /* 1 chip */
  828.     3579580,    /* 3.58 MHZ */
  829.     { YM3012_VOL(80,MIXER_PAN_LEFT,80,MIXER_PAN_RIGHT) },
  830.     { namcos1_sound_interrupt },
  831.     { 0 }
  832. };
  833.  
  834. static struct namco_interface namco_interface =
  835. {
  836.     23920/2,    /* sample rate (approximate value) */
  837.     8,            /* number of voices */
  838.     50,         /* playback volume */
  839.     -1,         /* memory region */
  840.     1            /* stereo */
  841. };
  842.  
  843. /*
  844.     namcos1 has tow 8bit dac channel. But They are mixed before pre-amp.
  845.     And,they are connected with pre-amp through active LPF.
  846.     LFP info : Fco = 3.3KHz , g = -12dB/oct
  847. */
  848. static struct DACinterface dac_interface =
  849. {
  850.     1,            /* 2 channel , but they are mixed by the driver */
  851.     { 100     }    /* mixing level */
  852. };
  853.  
  854. static struct MachineDriver machine_driver_ns1 =
  855. {
  856.     /* basic machine hardware */
  857.     {
  858.         {
  859.             CPU_M6809,
  860.             49152000/32,    /* Not sure if divided by 32 or 24 */
  861.             main_readmem,main_writemem,0,0,
  862.             interrupt,1,
  863.         },
  864.         {
  865.             CPU_M6809,
  866.             49152000/32,    /* Not sure if divided by 32 or 24 */
  867.             sub_readmem,sub_writemem,0,0,
  868.             interrupt,1,
  869.         },
  870.         {
  871.             CPU_M6809,
  872.             49152000/32,    /* Not sure if divided by 32 or 24 */
  873.             sound_readmem,sound_writemem,0,0,
  874.             interrupt,1
  875.         },
  876.         {
  877.             CPU_HD63701,    /* or compatible 6808 with extra instructions */
  878.             49152000/8/4,
  879.             mcu_readmem,mcu_writemem,mcu_readport,mcu_writeport,
  880.             interrupt,1
  881.         }
  882.     },
  883.     60, DEFAULT_REAL_60HZ_VBLANK_DURATION,    /* frames per second, vblank duration */
  884.     0, /* CPU slice timer is made by machine_init */
  885.     init_namcos1,
  886.  
  887.     /* video hardware */
  888.     36*8, 28*8, { 0*8, 36*8-1, 0*8, 28*8-1 },
  889.     gfxdecodeinfo,
  890.     128*16+6*256+6*256+1,    /* sprites, tiles, shadowed tiles, background */
  891.         128*16+6*256+1,
  892.     namcos1_vh_convert_color_prom,
  893.  
  894.     VIDEO_TYPE_RASTER | VIDEO_MODIFIES_PALETTE | VIDEO_UPDATE_BEFORE_VBLANK,
  895.     0,
  896.     namcos1_vh_start,
  897.     namcos1_vh_stop,
  898.     namcos1_vh_screenrefresh,
  899.  
  900.     /* sound hardware */
  901.     SOUND_SUPPORTS_STEREO,0,0,0,
  902.     {
  903.         {
  904.             SOUND_YM2151,
  905.             &ym2151_interface
  906.         },
  907.         {
  908.             SOUND_NAMCO,
  909.             &namco_interface
  910.         },
  911.         {
  912.             SOUND_DAC,
  913.             &dac_interface
  914.         }
  915.     },
  916.  
  917.     nvram_handler
  918. };
  919.  
  920. static struct MachineDriver machine_driver_quester =
  921. {
  922.     /* basic machine hardware */
  923.     {
  924.         {
  925.             CPU_M6809,
  926.             49152000/32,    /* Not sure if divided by 32 or 24 */
  927.             main_readmem,main_writemem,0,0,
  928.             interrupt,1,
  929.         },
  930.         {
  931.             CPU_M6809,
  932.             49152000/32,    /* Not sure if divided by 32 or 24 */
  933.             sub_readmem,sub_writemem,0,0,
  934.             interrupt,1,
  935.         },
  936.         {
  937.             CPU_M6809,
  938.             49152000/32,    /* Not sure if divided by 32 or 24 */
  939.             sound_readmem,sound_writemem,0,0,
  940.             interrupt,1
  941.         },
  942.         {
  943.             CPU_HD63701,    /* or compatible 6808 with extra instructions */
  944.             49152000/8/4,
  945.             quester_mcu_readmem,mcu_writemem,mcu_readport,mcu_writeport,
  946.             interrupt,1
  947.         }
  948.     },
  949.     60, DEFAULT_REAL_60HZ_VBLANK_DURATION,    /* frames per second, vblank duration */
  950.     0, /* CPU slice timer is made by machine_init */
  951.     init_namcos1,
  952.  
  953.     /* video hardware */
  954.     36*8, 28*8, { 0*8, 36*8-1, 0*8, 28*8-1 },
  955.     gfxdecodeinfo,
  956.     128*16+6*256+6*256+1,    /* sprites, tiles, shadowed tiles, background */
  957.         128*16+6*256+1,
  958.     namcos1_vh_convert_color_prom,
  959.  
  960.     VIDEO_TYPE_RASTER | VIDEO_MODIFIES_PALETTE | VIDEO_UPDATE_BEFORE_VBLANK,
  961.     0,
  962.     namcos1_vh_start,
  963.     namcos1_vh_stop,
  964.     namcos1_vh_screenrefresh,
  965.  
  966.     /* sound hardware */
  967.     SOUND_SUPPORTS_STEREO,0,0,0,
  968.     {
  969.         {
  970.             SOUND_YM2151,
  971.             &ym2151_interface
  972.         },
  973.         {
  974.             SOUND_NAMCO,
  975.             &namco_interface
  976.         },
  977.         {
  978.             SOUND_DAC,
  979.             &dac_interface
  980.         }
  981.     },
  982.  
  983.     nvram_handler
  984. };
  985.  
  986. static struct MachineDriver machine_driver_faceoff =
  987. {
  988.     /* basic machine hardware */
  989.     {
  990.         {
  991.             CPU_M6809,
  992.             49152000/32,    /* Not sure if divided by 32 or 24 */
  993.             main_readmem,main_writemem,0,0,
  994.             interrupt,1,
  995.         },
  996.         {
  997.             CPU_M6809,
  998.             49152000/32,    /* Not sure if divided by 32 or 24 */
  999.             sub_readmem,sub_writemem,0,0,
  1000.             interrupt,1,
  1001.         },
  1002.         {
  1003.             CPU_M6809,
  1004.             49152000/32,    /* Not sure if divided by 32 or 24 */
  1005.             sound_readmem,sound_writemem,0,0,
  1006.             interrupt,1
  1007.         },
  1008.         {
  1009.             CPU_HD63701,    /* or compatible 6808 with extra instructions */
  1010.             49152000/8/4,
  1011.             faceoff_mcu_readmem,mcu_writemem,mcu_readport,mcu_writeport,
  1012.             interrupt,1
  1013.         }
  1014.     },
  1015.     60, DEFAULT_REAL_60HZ_VBLANK_DURATION,    /* frames per second, vblank duration */
  1016.     0, /* CPU slice timer is made by machine_init */
  1017.     init_namcos1,
  1018.  
  1019.     /* video hardware */
  1020.     36*8, 28*8, { 0*8, 36*8-1, 0*8, 28*8-1 },
  1021.     gfxdecodeinfo,
  1022.     128*16+6*256+6*256+1,    /* sprites, tiles, shadowed tiles, background */
  1023.         128*16+6*256+1,
  1024.     namcos1_vh_convert_color_prom,
  1025.  
  1026.     VIDEO_TYPE_RASTER | VIDEO_MODIFIES_PALETTE | VIDEO_UPDATE_BEFORE_VBLANK,
  1027.     0,
  1028.     namcos1_vh_start,
  1029.     namcos1_vh_stop,
  1030.     namcos1_vh_screenrefresh,
  1031.  
  1032.     /* sound hardware */
  1033.     SOUND_SUPPORTS_STEREO,0,0,0,
  1034.     {
  1035.         {
  1036.             SOUND_YM2151,
  1037.             &ym2151_interface
  1038.         },
  1039.         {
  1040.             SOUND_NAMCO,
  1041.             &namco_interface
  1042.         },
  1043.         {
  1044.             SOUND_DAC,
  1045.             &dac_interface
  1046.         }
  1047.     },
  1048.  
  1049.     nvram_handler
  1050. };
  1051.  
  1052.  
  1053. /***********************************************************************
  1054.  
  1055.   Game drivers
  1056.  
  1057. ***********************************************************************/
  1058. /* load half size ROM to full size space */
  1059. #define ROM_LOAD_HS(name,start,length,crc) \
  1060.     ROM_LOAD(name,start,length,crc) \
  1061.     ROM_RELOAD(start+length,length)
  1062.  
  1063. /* Shadowland */
  1064. ROM_START( shadowld )
  1065.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1066.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1067.  
  1068.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1069.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1070.  
  1071.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1072.     ROM_LOAD( "yd1.sd0",            0x0c000, 0x10000, 0xa9cb51fb )
  1073.     ROM_LOAD( "yd1.sd1",            0x1c000, 0x10000, 0x65d1dc0d )
  1074.  
  1075.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1076.     ROM_LOAD_HS( "yd3.p7",            0x00000, 0x10000, 0xf1c271a0 )
  1077.     ROM_LOAD_HS( "yd3.p6",            0x20000, 0x10000, 0x93d6811c )
  1078.     ROM_LOAD_HS( "yd1.p5",            0x40000, 0x10000, 0x29a78bd6 )
  1079.     ROM_LOAD_HS( "yd1.p3",            0x80000, 0x10000, 0xa4f27c24 )
  1080.     ROM_LOAD_HS( "yd1.p2",            0xa0000, 0x10000, 0x62e5bbec )
  1081.     ROM_LOAD_HS( "yd1.p1",            0xc0000, 0x10000, 0xa8ea6bd3 )
  1082.     ROM_LOAD_HS( "yd1.p0",            0xe0000, 0x10000, 0x07e49883 )
  1083.  
  1084.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1085.     /* 0x00000 - 0x08000 = RAM6 ( 4 * 8k ) */
  1086.     /* 0x08000 - 0x0c000 = RAM1 ( 2 * 8k ) */
  1087.     /* 0x0c000 - 0x14000 = RAM3 ( 4 * 8k ) */
  1088.  
  1089.     ROM_REGION( 0xd0000, REGION_CPU4 )        /* the MCU & voice */
  1090.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1091.     ROM_LOAD_HS( "yd1.v0",            0x10000, 0x10000, 0xcde1ee23 )
  1092.     ROM_LOAD_HS( "yd1.v1",            0x30000, 0x10000, 0xc61f462b )
  1093.     ROM_LOAD_HS( "yd1.v2",            0x50000, 0x10000, 0x821ad462 )
  1094.     ROM_LOAD_HS( "yd1.v3",            0x70000, 0x10000, 0x1e003489 )
  1095.     ROM_LOAD_HS( "yd1.v4",            0x90000, 0x10000, 0xa106e6f6 )
  1096.     ROM_LOAD_HS( "yd1.v5",            0xb0000, 0x10000, 0xde72f38f )
  1097.  
  1098.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1099.     ROM_LOAD( "yd.ch8",             0x00000, 0x20000, 0x0c8e69d0 )
  1100.  
  1101.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1102.     ROM_LOAD( "yd.ch0",             0x00000, 0x20000, 0x717441dd )
  1103.     ROM_LOAD( "yd.ch1",             0x20000, 0x20000, 0xc1be6e35 )
  1104.     ROM_LOAD( "yd.ch2",             0x40000, 0x20000, 0x2df8d8cc )
  1105.     ROM_LOAD( "yd.ch3",             0x60000, 0x20000, 0xd4e15c9e )
  1106.     ROM_LOAD( "yd.ch4",             0x80000, 0x20000, 0xc0041e0d )
  1107.     ROM_LOAD( "yd.ch5",             0xa0000, 0x20000, 0x7b368461 )
  1108.     ROM_LOAD( "yd.ch6",             0xc0000, 0x20000, 0x3ac6a90e )
  1109.     ROM_LOAD( "yd.ch7",             0xe0000, 0x20000, 0x8d2cffa5 )
  1110.  
  1111.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1112.     ROM_LOAD( "yd.ob0",             0x00000, 0x20000, 0xefb8efe3 )
  1113.     ROM_LOAD( "yd.ob1",             0x20000, 0x20000, 0xbf4ee682 )
  1114.     ROM_LOAD( "yd.ob2",             0x40000, 0x20000, 0xcb721682 )
  1115.     ROM_LOAD( "yd.ob3",             0x60000, 0x20000, 0x8a6c3d1c )
  1116.     ROM_LOAD( "yd.ob4",             0x80000, 0x20000, 0xef97bffb )
  1117.     ROM_LOAD_HS( "yd3.ob5",         0xa0000, 0x10000, 0x1e4aa460 )
  1118. ROM_END
  1119.  
  1120. /* Youkai Douchuuki (Shadowland Japan) */
  1121. ROM_START( youkaidk )
  1122.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1123.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1124.  
  1125.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1126.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1127.  
  1128.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1129.     ROM_LOAD( "yd1.sd0",            0x0c000, 0x10000, 0xa9cb51fb )
  1130.     ROM_LOAD( "yd1.sd1",            0x1c000, 0x10000, 0x65d1dc0d )
  1131.  
  1132.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1133.     ROM_LOAD_HS( "yd2prg7b.bin",    0x00000, 0x10000, 0xa05bf3ae )
  1134.     ROM_LOAD_HS( "yd1-prg6.bin",    0x20000, 0x10000, 0x785a2772 )
  1135.     ROM_LOAD_HS( "yd1.p5",            0x40000, 0x10000, 0x29a78bd6 )
  1136.     ROM_LOAD_HS( "yd1.p3",            0x80000, 0x10000, 0xa4f27c24 )
  1137.     ROM_LOAD_HS( "yd1.p2",            0xa0000, 0x10000, 0x62e5bbec )
  1138.     ROM_LOAD_HS( "yd1.p1",            0xc0000, 0x10000, 0xa8ea6bd3 )
  1139.     ROM_LOAD_HS( "yd1.p0",            0xe0000, 0x10000, 0x07e49883 )
  1140.  
  1141.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1142.  
  1143.     ROM_REGION( 0xd0000, REGION_CPU4 )        /* the MCU & voice */
  1144.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1145.     ROM_LOAD_HS( "yd1.v0",            0x10000, 0x10000, 0xcde1ee23 )
  1146.     ROM_LOAD_HS( "yd1.v1",            0x30000, 0x10000, 0xc61f462b )
  1147.     ROM_LOAD_HS( "yd1.v2",            0x50000, 0x10000, 0x821ad462 )
  1148.     ROM_LOAD_HS( "yd1.v3",            0x70000, 0x10000, 0x1e003489 )
  1149.     ROM_LOAD_HS( "yd1.v4",            0x90000, 0x10000, 0xa106e6f6 )
  1150.     ROM_LOAD_HS( "yd1.v5",            0xb0000, 0x10000, 0xde72f38f )
  1151.  
  1152.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1153.     ROM_LOAD( "yd.ch8",             0x00000, 0x20000, 0x0c8e69d0 )
  1154.  
  1155.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1156.     ROM_LOAD( "yd.ch0",             0x00000, 0x20000, 0x717441dd )
  1157.     ROM_LOAD( "yd.ch1",             0x20000, 0x20000, 0xc1be6e35 )
  1158.     ROM_LOAD( "yd.ch2",             0x40000, 0x20000, 0x2df8d8cc )
  1159.     ROM_LOAD( "yd.ch3",             0x60000, 0x20000, 0xd4e15c9e )
  1160.     ROM_LOAD( "yd.ch4",             0x80000, 0x20000, 0xc0041e0d )
  1161.     ROM_LOAD( "yd.ch5",             0xa0000, 0x20000, 0x7b368461 )
  1162.     ROM_LOAD( "yd.ch6",             0xc0000, 0x20000, 0x3ac6a90e )
  1163.     ROM_LOAD( "yd.ch7",             0xe0000, 0x20000, 0x8d2cffa5 )
  1164.  
  1165.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1166.     ROM_LOAD( "yd.ob0",             0x00000, 0x20000, 0xefb8efe3 )
  1167.     ROM_LOAD( "yd.ob1",             0x20000, 0x20000, 0xbf4ee682 )
  1168.     ROM_LOAD( "yd.ob2",             0x40000, 0x20000, 0xcb721682 )
  1169.     ROM_LOAD( "yd.ob3",             0x60000, 0x20000, 0x8a6c3d1c )
  1170.     ROM_LOAD( "yd.ob4",             0x80000, 0x20000, 0xef97bffb )
  1171. ROM_END
  1172.  
  1173. /* Youkai Douchuuki (Shadowland Japan old version) */
  1174. ROM_START( yokaidko )
  1175.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1176.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1177.  
  1178.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1179.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1180.  
  1181.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1182.     ROM_LOAD( "yd1.sd0",            0x0c000, 0x10000, 0xa9cb51fb )
  1183.     ROM_LOAD( "yd1.sd1",            0x1c000, 0x10000, 0x65d1dc0d )
  1184.  
  1185.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1186.     ROM_LOAD_HS( "yd2_p7.bin",        0x00000, 0x10000, 0x3d39098c )
  1187.     ROM_LOAD_HS( "yd1-prg6.bin",    0x20000, 0x10000, 0x785a2772 )
  1188.     ROM_LOAD_HS( "yd1.p5",            0x40000, 0x10000, 0x29a78bd6 )
  1189.     ROM_LOAD_HS( "yd1.p3",            0x80000, 0x10000, 0xa4f27c24 )
  1190.     ROM_LOAD_HS( "yd1.p2",            0xa0000, 0x10000, 0x62e5bbec )
  1191.     ROM_LOAD_HS( "yd1.p1",            0xc0000, 0x10000, 0xa8ea6bd3 )
  1192.     ROM_LOAD_HS( "yd1.p0",            0xe0000, 0x10000, 0x07e49883 )
  1193.  
  1194.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1195.  
  1196.     ROM_REGION( 0xd0000, REGION_CPU4 )        /* the MCU & voice */
  1197.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1198.     ROM_LOAD_HS( "yd1.v0",            0x10000, 0x10000, 0xcde1ee23 )
  1199.     ROM_LOAD_HS( "yd1.v1",            0x30000, 0x10000, 0xc61f462b )
  1200.     ROM_LOAD_HS( "yd1.v2",            0x50000, 0x10000, 0x821ad462 )
  1201.     ROM_LOAD_HS( "yd1.v3",            0x70000, 0x10000, 0x1e003489 )
  1202.     ROM_LOAD_HS( "yd1.v4",            0x90000, 0x10000, 0xa106e6f6 )
  1203.     ROM_LOAD_HS( "yd1.v5",            0xb0000, 0x10000, 0xde72f38f )
  1204.  
  1205.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1206.     ROM_LOAD( "yd.ch8",             0x00000, 0x20000, 0x0c8e69d0 )
  1207.  
  1208.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1209.     ROM_LOAD( "yd.ch0",             0x00000, 0x20000, 0x717441dd )
  1210.     ROM_LOAD( "yd.ch1",             0x20000, 0x20000, 0xc1be6e35 )
  1211.     ROM_LOAD( "yd.ch2",             0x40000, 0x20000, 0x2df8d8cc )
  1212.     ROM_LOAD( "yd.ch3",             0x60000, 0x20000, 0xd4e15c9e )
  1213.     ROM_LOAD( "yd.ch4",             0x80000, 0x20000, 0xc0041e0d )
  1214.     ROM_LOAD( "yd.ch5",             0xa0000, 0x20000, 0x7b368461 )
  1215.     ROM_LOAD( "yd.ch6",             0xc0000, 0x20000, 0x3ac6a90e )
  1216.     ROM_LOAD( "yd.ch7",             0xe0000, 0x20000, 0x8d2cffa5 )
  1217.  
  1218.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1219.     ROM_LOAD( "yd.ob0",             0x00000, 0x20000, 0xefb8efe3 )
  1220.     ROM_LOAD( "yd.ob1",             0x20000, 0x20000, 0xbf4ee682 )
  1221.     ROM_LOAD( "yd.ob2",             0x40000, 0x20000, 0xcb721682 )
  1222.     ROM_LOAD( "yd.ob3",             0x60000, 0x20000, 0x8a6c3d1c )
  1223.     ROM_LOAD( "yd.ob4",             0x80000, 0x20000, 0xef97bffb )
  1224. ROM_END
  1225.  
  1226. /* Dragon Spirit */
  1227. ROM_START( dspirit )
  1228.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1229.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1230.  
  1231.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1232.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1233.  
  1234.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1235.     ROM_LOAD( "dssnd-0.bin",        0x0c000, 0x10000, 0x27100065 )
  1236.     ROM_LOAD( "dssnd-1.bin",        0x1c000, 0x10000, 0xb398645f )
  1237.  
  1238.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1239.     ROM_LOAD_HS( "ds3-p7.bin",        0x00000, 0x10000, 0x820bedb2 )
  1240.     ROM_LOAD_HS( "ds3-p6.bin",        0x20000, 0x10000, 0xfcc01bd1 )
  1241.     ROM_LOAD_HS( "dsprg-5.bin",     0x40000, 0x10000, 0x9a3a1028 )
  1242.     ROM_LOAD_HS( "dsprg-4.bin",     0x60000, 0x10000, 0xf3307870 )
  1243.     ROM_LOAD_HS( "dsprg-3.bin",     0x80000, 0x10000, 0xc6e5954b )
  1244.     ROM_LOAD_HS( "dsprg-2.bin",     0xa0000, 0x10000, 0x3c9b0100 )
  1245.     ROM_LOAD_HS( "dsprg-1.bin",     0xc0000, 0x10000, 0xf7e3298a )
  1246.     ROM_LOAD_HS( "dsprg-0.bin",     0xe0000, 0x10000, 0xb22a2856 )
  1247.  
  1248.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1249.  
  1250.     ROM_REGION( 0xb0000, REGION_CPU4 )        /* the MCU & voice */
  1251.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1252.     ROM_LOAD_HS( "dsvoi-0.bin",     0x10000, 0x10000, 0x313b3508 )
  1253.     ROM_LOAD( "dsvoi-1.bin",        0x30000, 0x20000, 0x54790d4e )
  1254.     ROM_LOAD( "dsvoi-2.bin",        0x50000, 0x20000, 0x05298534 )
  1255.     ROM_LOAD( "dsvoi-3.bin",        0x70000, 0x20000, 0x13e84c7e )
  1256.     ROM_LOAD( "dsvoi-4.bin",        0x90000, 0x20000, 0x34fbb8cd )
  1257.  
  1258.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1259.     ROM_LOAD( "dschr-8.bin",        0x00000, 0x20000, 0x946eb242 )
  1260.  
  1261.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1262.     ROM_LOAD( "dschr-0.bin",        0x00000, 0x20000, 0x7bf28ac3 )
  1263.     ROM_LOAD( "dschr-1.bin",        0x20000, 0x20000, 0x03582fea )
  1264.     ROM_LOAD( "dschr-2.bin",        0x40000, 0x20000, 0x5e05f4f9 )
  1265.     ROM_LOAD( "dschr-3.bin",        0x60000, 0x20000, 0xdc540791 )
  1266.     ROM_LOAD( "dschr-4.bin",        0x80000, 0x20000, 0xffd1f35c )
  1267.     ROM_LOAD( "dschr-5.bin",        0xa0000, 0x20000, 0x8472e0a3 )
  1268.     ROM_LOAD( "dschr-6.bin",        0xc0000, 0x20000, 0xa799665a )
  1269.     ROM_LOAD( "dschr-7.bin",        0xe0000, 0x20000, 0xa51724af )
  1270.  
  1271.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1272.     ROM_LOAD( "dsobj-0.bin",        0x00000, 0x20000, 0x03ec3076 )
  1273.     ROM_LOAD( "dsobj-1.bin",        0x20000, 0x20000, 0xe67a8fa4 )
  1274.     ROM_LOAD( "dsobj-2.bin",        0x40000, 0x20000, 0x061cd763 )
  1275.     ROM_LOAD( "dsobj-3.bin",        0x60000, 0x20000, 0x63225a09 )
  1276.     ROM_LOAD_HS( "dsobj-4.bin",     0x80000, 0x10000, 0xa6246fcb )
  1277. ROM_END
  1278.  
  1279. /* Dragon Spirit (old version) */
  1280. ROM_START( dspirito )
  1281.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1282.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1283.  
  1284.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1285.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1286.  
  1287.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1288.     ROM_LOAD( "dssnd-0.bin",        0x0c000, 0x10000, 0x27100065 )
  1289.     ROM_LOAD( "dssnd-1.bin",        0x1c000, 0x10000, 0xb398645f )
  1290.  
  1291.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1292.     ROM_LOAD_HS( "dsprg-7.bin",     0x00000, 0x10000, 0xf4c0d75e )
  1293.     ROM_LOAD_HS( "dsprg-6.bin",     0x20000, 0x10000, 0xa82737b4 )
  1294.     ROM_LOAD_HS( "dsprg-5.bin",     0x40000, 0x10000, 0x9a3a1028 )
  1295.     ROM_LOAD_HS( "dsprg-4.bin",     0x60000, 0x10000, 0xf3307870 )
  1296.     ROM_LOAD_HS( "dsprg-3.bin",     0x80000, 0x10000, 0xc6e5954b )
  1297.     ROM_LOAD_HS( "dsprg-2.bin",     0xa0000, 0x10000, 0x3c9b0100 )
  1298.     ROM_LOAD_HS( "dsprg-1.bin",     0xc0000, 0x10000, 0xf7e3298a )
  1299.     ROM_LOAD_HS( "dsprg-0.bin",     0xe0000, 0x10000, 0xb22a2856 )
  1300.  
  1301.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1302.  
  1303.     ROM_REGION( 0xb0000, REGION_CPU4 )        /* the MCU & voice */
  1304.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1305.     ROM_LOAD_HS( "dsvoi-0.bin",     0x10000, 0x10000, 0x313b3508 )
  1306.     ROM_LOAD( "dsvoi-1.bin",        0x30000, 0x20000, 0x54790d4e )
  1307.     ROM_LOAD( "dsvoi-2.bin",        0x50000, 0x20000, 0x05298534 )
  1308.     ROM_LOAD( "dsvoi-3.bin",        0x70000, 0x20000, 0x13e84c7e )
  1309.     ROM_LOAD( "dsvoi-4.bin",        0x90000, 0x20000, 0x34fbb8cd )
  1310.  
  1311.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1312.     ROM_LOAD( "dschr-8.bin",        0x00000, 0x20000, 0x946eb242 )
  1313.  
  1314.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1315.     ROM_LOAD( "dschr-0.bin",        0x00000, 0x20000, 0x7bf28ac3 )
  1316.     ROM_LOAD( "dschr-1.bin",        0x20000, 0x20000, 0x03582fea )
  1317.     ROM_LOAD( "dschr-2.bin",        0x40000, 0x20000, 0x5e05f4f9 )
  1318.     ROM_LOAD( "dschr-3.bin",        0x60000, 0x20000, 0xdc540791 )
  1319.     ROM_LOAD( "dschr-4.bin",        0x80000, 0x20000, 0xffd1f35c )
  1320.     ROM_LOAD( "dschr-5.bin",        0xa0000, 0x20000, 0x8472e0a3 )
  1321.     ROM_LOAD( "dschr-6.bin",        0xc0000, 0x20000, 0xa799665a )
  1322.     ROM_LOAD( "dschr-7.bin",        0xe0000, 0x20000, 0xa51724af )
  1323.  
  1324.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1325.     ROM_LOAD( "dsobj-0.bin",        0x00000, 0x20000, 0x03ec3076 )
  1326.     ROM_LOAD( "dsobj-1.bin",        0x20000, 0x20000, 0xe67a8fa4 )
  1327.     ROM_LOAD( "dsobj-2.bin",        0x40000, 0x20000, 0x061cd763 )
  1328.     ROM_LOAD( "dsobj-3.bin",        0x60000, 0x20000, 0x63225a09 )
  1329.     ROM_LOAD_HS( "dsobj-4.bin",     0x80000, 0x10000, 0xa6246fcb )
  1330. ROM_END
  1331.  
  1332. /* Blazer */
  1333. ROM_START( blazer )
  1334.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1335.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1336.  
  1337.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1338.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1339.  
  1340.     ROM_REGION( 0x1c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1341.     ROM_LOAD( "bz1_snd0.bin",        0x0c000, 0x10000, 0x6c3a580b )
  1342.  
  1343.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1344.     ROM_LOAD_HS( "bz1_prg7.bin",    0x00000, 0x10000, 0x2d4cbb95 )
  1345.     ROM_LOAD( "bz1_prg6.bin",        0x20000, 0x20000, 0x81c48fc0 )
  1346.     ROM_LOAD( "bz1_prg5.bin",        0x40000, 0x20000, 0x900da191 )
  1347.     ROM_LOAD( "bz1_prg4.bin",        0x60000, 0x20000, 0x65ef6f05 )
  1348.     ROM_LOAD_HS( "bz1_prg3.bin",    0x80000, 0x10000, 0x81b32a1a )
  1349.     ROM_LOAD_HS( "bz1_prg2.bin",    0xa0000, 0x10000, 0x5d700aed )
  1350.     ROM_LOAD_HS( "bz1_prg1.bin",    0xc0000, 0x10000, 0xc54bbbf4 )
  1351.     ROM_LOAD_HS( "bz1_prg0.bin",    0xe0000, 0x10000, 0xa7dd195b )
  1352.  
  1353.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1354.  
  1355.     ROM_REGION( 0xb0000, REGION_CPU4 )        /* the MCU & voice */
  1356.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1357.     ROM_LOAD_HS( "bz1_voi0.bin",    0x10000, 0x10000, 0x3d09d32e )
  1358.     ROM_LOAD( "bz1_voi1.bin",        0x30000, 0x20000, 0x2043b141 )
  1359.     ROM_LOAD( "bz1_voi2.bin",        0x50000, 0x20000, 0x64143442 )
  1360.     ROM_LOAD( "bz1_voi3.bin",        0x70000, 0x20000, 0x26cfc510 )
  1361.     ROM_LOAD( "bz1_voi4.bin",        0x90000, 0x20000, 0xd206b1bd )
  1362.  
  1363.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1364.     ROM_LOAD( "bz1_chr8.bin",        0x00000, 0x20000, 0xdb28bfca )
  1365.  
  1366.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1367.     ROM_LOAD( "bz1_chr0.bin",        0x00000, 0x20000, 0xd346ba61 )
  1368.     ROM_LOAD( "bz1_chr1.bin",        0x20000, 0x20000, 0xe45eb2ea )
  1369.     ROM_LOAD( "bz1_chr2.bin",        0x40000, 0x20000, 0x599079ee )
  1370.     ROM_LOAD( "bz1_chr3.bin",        0x60000, 0x20000, 0xd5182e36 )
  1371.     ROM_LOAD( "bz1_chr4.bin",        0x80000, 0x20000, 0xe788259e )
  1372.     ROM_LOAD( "bz1_chr5.bin",        0xa0000, 0x20000, 0x107e6814 )
  1373.     ROM_LOAD( "bz1_chr6.bin",        0xc0000, 0x20000, 0x0312e2ba )
  1374.     ROM_LOAD( "bz1_chr7.bin",        0xe0000, 0x20000, 0xd9d9a90f )
  1375.  
  1376.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1377.     ROM_LOAD( "bz1_obj0.bin",        0x00000, 0x20000, 0x22aee927 )
  1378.     ROM_LOAD( "bz1_obj1.bin",        0x20000, 0x20000, 0x7cb10112 )
  1379.     ROM_LOAD( "bz1_obj2.bin",        0x40000, 0x20000, 0x34b23bb7 )
  1380.     ROM_LOAD( "bz1_obj3.bin",        0x60000, 0x20000, 0x9bc1db71 )
  1381. ROM_END
  1382.  
  1383. /* Quester */
  1384. ROM_START( quester )
  1385.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1386.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1387.  
  1388.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1389.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1390.  
  1391.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1392.     ROM_LOAD( "qs1_s0.bin",         0x0c000, 0x10000, 0xc2ef3af9 )
  1393.  
  1394.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1395.     ROM_LOAD_HS( "qs1_p7b.bin",     0x00000, 0x10000, 0xf358a944 )
  1396.     ROM_LOAD( "qs1_p5.bin",         0x40000, 0x10000, 0xc8e11f30 )
  1397.  
  1398.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1399.  
  1400.     ROM_REGION( 0x30000, REGION_CPU4 )        /* the MCU & voice */
  1401.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1402.     ROM_LOAD_HS( "qs1_v0.bin",        0x10000, 0x10000, 0x6a2f3038 )
  1403.  
  1404.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1405.     ROM_LOAD( "qs1_c8.bin",         0x00000, 0x10000, 0x06730d54 )
  1406.  
  1407.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1408.     ROM_LOAD( "qs1_c0.bin",         0x00000, 0x20000, 0xca69bd7a )
  1409.     ROM_LOAD( "qs1_c1.bin",         0x20000, 0x20000, 0xd660ba71 )
  1410.     ROM_LOAD( "qs1_c2.bin",         0x40000, 0x20000, 0x4686f656 )
  1411.  
  1412.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1413.     ROM_LOAD( "qs1_o0.bin",         0x00000, 0x10000, 0xe24f0bf1 )
  1414.     ROM_LOAD( "qs1_o1.bin",         0x20000, 0x10000, 0xe4aab0ca )
  1415. ROM_END
  1416.  
  1417. /* Pac-Mania */
  1418. ROM_START( pacmania )
  1419.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1420.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1421.  
  1422.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1423.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1424.  
  1425.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1426.     ROM_LOAD( "pm_snd0.bin",        0x0c000, 0x10000, 0xc10370fa )
  1427.     ROM_LOAD( "pm_snd1.bin",        0x1c000, 0x10000, 0xf761ed5a )
  1428.  
  1429.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1430.     ROM_LOAD_HS( "pm_prg7.bin",     0x00000, 0x10000, 0x462fa4fd )
  1431.     ROM_LOAD( "pm_prg6.bin",        0x20000, 0x20000, 0xfe94900c )
  1432.  
  1433.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1434.  
  1435.     ROM_REGION( 0x30000, REGION_CPU4 )        /* the MCU & voice */
  1436.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1437.     ROM_LOAD_HS( "pm_voice.bin",    0x10000, 0x10000, 0x1ad5788f )
  1438.  
  1439.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1440.     ROM_LOAD( "pm_chr8.bin",        0x00000, 0x10000, 0xf3afd65d )
  1441.  
  1442.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1443.     ROM_LOAD( "pm_chr0.bin",        0x00000, 0x20000, 0x7c57644c )
  1444.     ROM_LOAD( "pm_chr1.bin",        0x20000, 0x20000, 0x7eaa67ed )
  1445.     ROM_LOAD( "pm_chr2.bin",        0x40000, 0x20000, 0x27e739ac )
  1446.     ROM_LOAD( "pm_chr3.bin",        0x60000, 0x20000, 0x1dfda293 )
  1447.  
  1448.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1449.     ROM_LOAD( "pm_obj0.bin",        0x00000, 0x20000, 0xfda57e8b )
  1450.     ROM_LOAD( "pm_obj1.bin",        0x20000, 0x20000, 0x4c08affe )
  1451. ROM_END
  1452.  
  1453. /* Pac-Mania (Japan) diff o1,s0,s1,p7,v0 */
  1454. ROM_START( pacmanij )
  1455.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1456.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1457.  
  1458.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1459.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1460.  
  1461.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1462.     ROM_LOAD( "pm-s0.a10",            0x0c000, 0x10000, 0xd5ef5eee )
  1463.     ROM_LOAD( "pm-s1.b10",            0x1c000, 0x10000, 0x411bc134 )
  1464.  
  1465.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1466.     ROM_LOAD_HS( "pm-p7.t10",        0x00000, 0x10000, 0x2aa99e2b )
  1467.     ROM_LOAD( "pm_prg6.bin",        0x20000, 0x20000, 0xfe94900c )
  1468.  
  1469.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1470.  
  1471.     ROM_REGION( 0x30000, REGION_CPU4 )        /* the MCU & voice */
  1472.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1473.     ROM_LOAD_HS( "pm-v0.b5",        0x10000, 0x10000, 0xe2689f79 )
  1474.  
  1475.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1476.     ROM_LOAD( "pm_chr8.bin",        0x00000, 0x10000, 0xf3afd65d )
  1477.  
  1478.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1479.     ROM_LOAD( "pm_chr0.bin",        0x00000, 0x20000, 0x7c57644c )
  1480.     ROM_LOAD( "pm_chr1.bin",        0x20000, 0x20000, 0x7eaa67ed )
  1481.     ROM_LOAD( "pm_chr2.bin",        0x40000, 0x20000, 0x27e739ac )
  1482.     ROM_LOAD( "pm_chr3.bin",        0x60000, 0x20000, 0x1dfda293 )
  1483.  
  1484.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1485.     ROM_LOAD( "pm_obj0.bin",        0x00000, 0x20000, 0xfda57e8b )
  1486.     ROM_LOAD( "pm-01.b9",            0x20000, 0x20000, 0x27bdf440 )
  1487. ROM_END
  1488.  
  1489. /* Galaga '88 */
  1490. ROM_START( galaga88 )
  1491.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1492.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1493.  
  1494.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1495.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1496.  
  1497.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1498.     ROM_LOAD( "g88_snd0.rom",        0x0c000, 0x10000, 0x164a3fdc )
  1499.     ROM_LOAD( "g88_snd1.rom",        0x1c000, 0x10000, 0x16a4b784 )
  1500.  
  1501.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1502.     ROM_LOAD_HS( "g88_prg7.rom",    0x00000, 0x10000, 0xdf75b7fc )
  1503.     ROM_LOAD_HS( "g88_prg6.rom",    0x20000, 0x10000, 0x7e3471d3 )
  1504.     ROM_LOAD_HS( "g88_prg5.rom",    0x40000, 0x10000, 0x4fbd3f6c )
  1505.     ROM_LOAD_HS( "g88_prg1.rom",    0xc0000, 0x10000, 0xe68cb351 )
  1506.     ROM_LOAD_HS( "g88_prg0.rom",    0xe0000, 0x10000, 0x0f0778ca )
  1507.  
  1508.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1509.  
  1510.     ROM_REGION( 0xd0000, REGION_CPU4 )        /* the MCU & voice */
  1511.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1512.     ROM_LOAD_HS( "g88_vce0.rom",    0x10000, 0x10000, 0x86921dd4 )
  1513.     ROM_LOAD_HS( "g88_vce1.rom",    0x30000, 0x10000, 0x9c300e16 )
  1514.     ROM_LOAD_HS( "g88_vce2.rom",    0x50000, 0x10000, 0x5316b4b0 )
  1515.     ROM_LOAD_HS( "g88_vce3.rom",    0x70000, 0x10000, 0xdc077af4 )
  1516.     ROM_LOAD_HS( "g88_vce4.rom",    0x90000, 0x10000, 0xac0279a7 )
  1517.     ROM_LOAD_HS( "g88_vce5.rom",    0xb0000, 0x10000, 0x014ddba1 )
  1518.  
  1519.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1520.     ROM_LOAD( "g88_chr8.rom",        0x00000, 0x20000, 0x3862ed0a )
  1521.  
  1522.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1523.     ROM_LOAD( "g88_chr0.rom",        0x00000, 0x20000, 0x68559c78 )
  1524.     ROM_LOAD( "g88_chr1.rom",        0x20000, 0x20000, 0x3dc0f93f )
  1525.     ROM_LOAD( "g88_chr2.rom",        0x40000, 0x20000, 0xdbf26f1f )
  1526.     ROM_LOAD( "g88_chr3.rom",        0x60000, 0x20000, 0xf5d6cac5 )
  1527.  
  1528.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1529.     ROM_LOAD( "g88_obj0.rom",        0x00000, 0x20000, 0xd7112e3f )
  1530.     ROM_LOAD( "g88_obj1.rom",        0x20000, 0x20000, 0x680db8e7 )
  1531.     ROM_LOAD( "g88_obj2.rom",        0x40000, 0x20000, 0x13c97512 )
  1532.     ROM_LOAD( "g88_obj3.rom",        0x60000, 0x20000, 0x3ed3941b )
  1533.     ROM_LOAD( "g88_obj4.rom",        0x80000, 0x20000, 0x370ff4ad )
  1534.     ROM_LOAD( "g88_obj5.rom",        0xa0000, 0x20000, 0xb0645169 )
  1535. ROM_END
  1536.  
  1537. ROM_START( galag88b )
  1538.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1539.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1540.  
  1541.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1542.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1543.  
  1544.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1545.     ROM_LOAD( "g88_snd0.rom",        0x0c000, 0x10000, 0x164a3fdc )
  1546.     ROM_LOAD( "g88_snd1.rom",        0x1c000, 0x10000, 0x16a4b784 )
  1547.  
  1548.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1549.     ROM_LOAD_HS( "g88_prg7.rom",    0x00000, 0x10000, 0xdf75b7fc )
  1550.     ROM_LOAD_HS( "prg6",            0x20000, 0x10000, 0x403d01c1 )
  1551.     ROM_LOAD_HS( "g88_prg5.rom",    0x40000, 0x10000, 0x4fbd3f6c )
  1552.     ROM_LOAD_HS( "g88_prg1.rom",    0xc0000, 0x10000, 0xe68cb351 )
  1553.     ROM_LOAD_HS( "g88_prg0.rom",    0xe0000, 0x10000, 0x0f0778ca )
  1554.  
  1555.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1556.  
  1557.     ROM_REGION( 0xd0000, REGION_CPU4 )        /* the MCU & voice */
  1558.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1559.     ROM_LOAD_HS( "g88_vce0.rom",    0x10000, 0x10000, 0x86921dd4 )
  1560.     ROM_LOAD_HS( "g88_vce1.rom",    0x30000, 0x10000, 0x9c300e16 )
  1561.     ROM_LOAD_HS( "g88_vce2.rom",    0x50000, 0x10000, 0x5316b4b0 )
  1562.     ROM_LOAD_HS( "g88_vce3.rom",    0x70000, 0x10000, 0xdc077af4 )
  1563.     ROM_LOAD_HS( "g88_vce4.rom",    0x90000, 0x10000, 0xac0279a7 )
  1564.     ROM_LOAD_HS( "g88_vce5.rom",    0xb0000, 0x10000, 0x014ddba1 )
  1565.  
  1566.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1567.     ROM_LOAD( "g88_chr8.rom",        0x00000, 0x20000, 0x3862ed0a )
  1568.  
  1569.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1570.     ROM_LOAD( "g88_chr0.rom",        0x00000, 0x20000, 0x68559c78 )
  1571.     ROM_LOAD( "g88_chr1.rom",        0x20000, 0x20000, 0x3dc0f93f )
  1572.     ROM_LOAD( "g88_chr2.rom",        0x40000, 0x20000, 0xdbf26f1f )
  1573.     ROM_LOAD( "g88_chr3.rom",        0x60000, 0x20000, 0xf5d6cac5 )
  1574.  
  1575.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1576.     ROM_LOAD( "g88_obj0.rom",        0x00000, 0x20000, 0xd7112e3f )
  1577.     ROM_LOAD( "g88_obj1.rom",        0x20000, 0x20000, 0x680db8e7 )
  1578.     ROM_LOAD( "g88_obj2.rom",        0x40000, 0x20000, 0x13c97512 )
  1579.     ROM_LOAD( "g88_obj3.rom",        0x60000, 0x20000, 0x3ed3941b )
  1580.     ROM_LOAD( "g88_obj4.rom",        0x80000, 0x20000, 0x370ff4ad )
  1581.     ROM_LOAD( "g88_obj5.rom",        0xa0000, 0x20000, 0xb0645169 )
  1582. ROM_END
  1583.  
  1584. /* Galaga '88 (Japan) */
  1585. ROM_START( galag88j )
  1586.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1587.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1588.  
  1589.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1590.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1591.  
  1592.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1593.     ROM_LOAD( "g88_snd0.rom",        0x0c000, 0x10000, 0x164a3fdc )
  1594.     ROM_LOAD( "g88_snd1.rom",        0x1c000, 0x10000, 0x16a4b784 )
  1595.  
  1596.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1597.     ROM_LOAD_HS( "g88jprg7.rom",    0x00000, 0x10000, 0x7c10965d )
  1598.     ROM_LOAD_HS( "g88jprg6.rom",    0x20000, 0x10000, 0xe7203707 )
  1599.     ROM_LOAD_HS( "g88_prg5.rom",    0x40000, 0x10000, 0x4fbd3f6c )
  1600.     ROM_LOAD_HS( "g88_prg1.rom",    0xc0000, 0x10000, 0xe68cb351 )
  1601.     ROM_LOAD_HS( "g88_prg0.rom",    0xe0000, 0x10000, 0x0f0778ca )
  1602.  
  1603.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1604.  
  1605.     ROM_REGION( 0xd0000, REGION_CPU4 )        /* the MCU & voice */
  1606.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1607.     ROM_LOAD_HS( "g88_vce0.rom",    0x10000, 0x10000, 0x86921dd4 )
  1608.     ROM_LOAD_HS( "g88_vce1.rom",    0x30000, 0x10000, 0x9c300e16 )
  1609.     ROM_LOAD_HS( "g88_vce2.rom",    0x50000, 0x10000, 0x5316b4b0 )
  1610.     ROM_LOAD_HS( "g88_vce3.rom",    0x70000, 0x10000, 0xdc077af4 )
  1611.     ROM_LOAD_HS( "g88_vce4.rom",    0x90000, 0x10000, 0xac0279a7 )
  1612.     ROM_LOAD_HS( "g88_vce5.rom",    0xb0000, 0x10000, 0x014ddba1 )
  1613.  
  1614.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1615.     ROM_LOAD( "g88_chr8.rom",        0x00000, 0x20000, 0x3862ed0a )
  1616.  
  1617.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1618.     ROM_LOAD( "g88_chr0.rom",        0x00000, 0x20000, 0x68559c78 )
  1619.     ROM_LOAD( "g88_chr1.rom",        0x20000, 0x20000, 0x3dc0f93f )
  1620.     ROM_LOAD( "g88_chr2.rom",        0x40000, 0x20000, 0xdbf26f1f )
  1621.     ROM_LOAD( "g88_chr3.rom",        0x60000, 0x20000, 0xf5d6cac5 )
  1622.  
  1623.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1624.     ROM_LOAD( "g88_obj0.rom",        0x00000, 0x20000, 0xd7112e3f )
  1625.     ROM_LOAD( "g88_obj1.rom",        0x20000, 0x20000, 0x680db8e7 )
  1626.     ROM_LOAD( "g88_obj2.rom",        0x40000, 0x20000, 0x13c97512 )
  1627.     ROM_LOAD( "g88_obj3.rom",        0x60000, 0x20000, 0x3ed3941b )
  1628.     ROM_LOAD( "g88_obj4.rom",        0x80000, 0x20000, 0x370ff4ad )
  1629.     ROM_LOAD( "g88_obj5.rom",        0xa0000, 0x20000, 0xb0645169 )
  1630. ROM_END
  1631.  
  1632. /* World Stadium */
  1633. ROM_START( ws )
  1634.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1635.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1636.  
  1637.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1638.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1639.  
  1640.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1641.     ROM_LOAD( "ws1-s0.bin",         0x0c000, 0x10000, 0x45a87810 )
  1642.     ROM_LOAD( "ws1-s1.bin",         0x1c000, 0x10000, 0x31bf74c1 )
  1643.  
  1644.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1645.     ROM_LOAD_HS( "ws1-p7.bin",        0x00000, 0x10000, 0x28712eba )
  1646.     ROM_LOAD_HS( "ws1-p2.bin",        0xa0000, 0x10000, 0xbb09fa9b )
  1647.     ROM_LOAD_HS( "ws1-p1.bin",        0xc0000, 0x10000, 0xdfd72bed )
  1648.     ROM_LOAD_HS( "ws1-p0.bin",        0xe0000, 0x10000, 0xb0234298 )
  1649.  
  1650.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1651.  
  1652.     ROM_REGION( 0x50000, REGION_CPU4 )        /* the MCU & voice */
  1653.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1654.     ROM_LOAD_HS( "ws1-v0.bin",        0x10000, 0x10000, 0xf6949199 )
  1655.     ROM_LOAD( "ws1-v1.bin",         0x30000, 0x20000, 0x210e2af9 )
  1656.  
  1657.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1658.     ROM_LOAD( "ws1-c8.bin",         0x00000, 0x20000, 0xd1897b9b )
  1659.  
  1660.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1661.     ROM_LOAD( "ws1-c0.bin",         0x00000, 0x20000, 0x3e3e96b4 )
  1662.     ROM_LOAD( "ws1-c1.bin",         0x20000, 0x20000, 0x897dfbc1 )
  1663.     ROM_LOAD( "ws1-c2.bin",         0x40000, 0x20000, 0xe142527c )
  1664.     ROM_LOAD( "ws1-c3.bin",         0x60000, 0x20000, 0x907d4dc8 )
  1665.     ROM_LOAD( "ws1-c4.bin",         0x80000, 0x20000, 0xafb11e17 )
  1666.     ROM_LOAD( "ws1-c6.bin",         0xc0000, 0x20000, 0xa16a17c2 )
  1667.  
  1668.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1669.     ROM_LOAD( "ws1-o0.bin",         0x00000, 0x20000, 0x12dc83a6 )
  1670.     ROM_LOAD( "ws1-o1.bin",         0x20000, 0x20000, 0x68290a46 )
  1671.     ROM_LOAD( "ws1-o2.bin",         0x40000, 0x20000, 0xcd5ba55d )
  1672.     ROM_LOAD_HS( "ws1-o3.bin",        0x60000, 0x10000, 0xf2ed5309 )
  1673. ROM_END
  1674.  
  1675. /* Beraboh Man */
  1676. ROM_START( berabohm )
  1677.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1678.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1679.  
  1680.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1681.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1682.  
  1683.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1684.     ROM_LOAD( "bm1-snd0.bin",        0x0c000, 0x10000, 0xd5d53cb1 )
  1685.  
  1686.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1687.     ROM_LOAD( "bm1prg7b.bin",        0x10000, 0x10000, 0xe0c36ddd )
  1688.     ROM_CONTINUE(                    0x00000, 0x10000 )
  1689.     ROM_LOAD_HS( "bm1-prg6.bin",    0x20000, 0x10000, 0xa51b69a5 )
  1690.     ROM_LOAD( "bm1-prg4.bin",        0x60000, 0x20000, 0xf6cfcb8c )
  1691.     ROM_LOAD( "bm1-prg1.bin",        0xc0000, 0x20000, 0xb15f6407 )
  1692.     ROM_LOAD( "bm1-prg0.bin",        0xe0000, 0x20000, 0xb57ff8c1 )
  1693.  
  1694.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1695.  
  1696.     ROM_REGION( 0x70000, REGION_CPU4 )        /* the MCU & voice */
  1697.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1698.     ROM_LOAD_HS( "bm1-voi0.bin",    0x10000, 0x10000, 0x4e40d0ca )
  1699.     ROM_LOAD(     "bm1-voi1.bin",    0x30000, 0x20000, 0xbe9ce0a8 )
  1700.     ROM_LOAD_HS( "bm1-voi2.bin",    0x50000, 0x10000, 0x41225d04 )
  1701.  
  1702.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1703.     ROM_LOAD( "bm-chr8.bin",        0x00000, 0x20000, 0x92860e95 )
  1704.  
  1705.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1706.     ROM_LOAD( "bm-chr0.bin",        0x00000, 0x20000, 0xeda1d92e )
  1707.     ROM_LOAD( "bm-chr1.bin",        0x20000, 0x20000, 0x8ae1891e )
  1708.     ROM_LOAD( "bm-chr2.bin",        0x40000, 0x20000, 0x774cdf4e )
  1709.     ROM_LOAD( "bm-chr3.bin",        0x60000, 0x20000, 0x6d81e6c9 )
  1710.     ROM_LOAD( "bm-chr4.bin",        0x80000, 0x20000, 0xf4597683 )
  1711.     ROM_LOAD( "bm-chr5.bin",        0xa0000, 0x20000, 0x0e0abde0 )
  1712.     ROM_LOAD( "bm-chr6.bin",        0xc0000, 0x20000, 0x4a61f08c )
  1713.  
  1714.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1715.     ROM_LOAD( "bm-obj0.bin",        0x00000, 0x20000, 0x15724b94 )
  1716.     ROM_LOAD( "bm-obj1.bin",        0x20000, 0x20000, 0x5d21f962 )
  1717.     ROM_LOAD( "bm-obj2.bin",        0x40000, 0x20000, 0x5d48e924 )
  1718.     ROM_LOAD( "bm-obj3.bin",        0x60000, 0x20000, 0xcbe56b7f )
  1719.     ROM_LOAD( "bm-obj4.bin",        0x80000, 0x20000, 0x76dcc24c )
  1720.     ROM_LOAD( "bm-obj5.bin",        0xa0000, 0x20000, 0xfe70201d )
  1721.     ROM_LOAD( "bm-obj7.bin",        0xe0000, 0x20000, 0x377c81ed )
  1722. ROM_END
  1723.  
  1724. /* Marchen Maze */
  1725. ROM_START( mmaze )
  1726.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1727.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1728.  
  1729.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1730.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1731.  
  1732.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1733.     ROM_LOAD( "mm.sd0",             0x0c000, 0x10000, 0x25d25e07 )
  1734.     ROM_LOAD( "mm.sd1",             0x1c000, 0x10000, 0x2c5849c8 )
  1735.  
  1736.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1737.     ROM_LOAD_HS( "mm1.p7",            0x00000, 0x10000, 0x085e58cc )
  1738.     ROM_LOAD_HS( "mm1.p6",            0x20000, 0x10000, 0xeaf530d8 )
  1739.     ROM_LOAD( "mm.p2",                0xa0000, 0x20000, 0x91bde09f )
  1740.     ROM_LOAD( "mm.p1",                0xc0000, 0x20000, 0x6ba14e41 )
  1741.     ROM_LOAD( "mm.p0",                0xe0000, 0x20000, 0xe169a911 )
  1742.  
  1743.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1744.  
  1745.     ROM_REGION( 0x50000, REGION_CPU4 )        /* the MCU & voice */
  1746.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1747.     ROM_LOAD( "mm.v0",                0x20000, 0x10000, 0xee974cff )
  1748.     ROM_CONTINUE(                    0x10000, 0x10000 )
  1749.     ROM_LOAD( "mm.v1",                0x30000, 0x20000, 0xd09b5830 )
  1750.  
  1751.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1752.     ROM_LOAD( "mm.ch8",             0x00000, 0x20000, 0xa3784dfe )
  1753.  
  1754.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1755.     ROM_LOAD( "mm.ch0",             0x00000, 0x20000, 0x43ff2dfc )
  1756.     ROM_LOAD( "mm.ch1",             0x20000, 0x20000, 0xb9b4b72d )
  1757.     ROM_LOAD( "mm.ch2",             0x40000, 0x20000, 0xbee28425 )
  1758.     ROM_LOAD( "mm.ch3",             0x60000, 0x20000, 0xd9f41e5c )
  1759.     ROM_LOAD( "mm.ch4",             0x80000, 0x20000, 0x3484f4ae )
  1760.     ROM_LOAD( "mm.ch5",             0xa0000, 0x20000, 0xc863deba )
  1761.  
  1762.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1763.     ROM_LOAD( "mm.ob0",             0x00000, 0x20000, 0xd4b7e698 )
  1764.     ROM_LOAD( "mm.ob1",             0x20000, 0x20000, 0x1ce49e04 )
  1765.     ROM_LOAD( "mm.ob2",             0x40000, 0x20000, 0x3d3d5de3 )
  1766.     ROM_LOAD( "mm.ob3",             0x60000, 0x20000, 0xdac57358 )
  1767. ROM_END
  1768.  
  1769. /* Bakutotsu Kijuutei */
  1770. ROM_START( bakutotu )
  1771.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1772.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1773.  
  1774.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1775.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1776.  
  1777.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1778.     ROM_LOAD( "bk1-snd0.bin",        0x0c000, 0x10000, 0xc35d7df6 )
  1779.  
  1780.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1781.     ROM_LOAD( "bk1-prg7.bin",        0x10000, 0x10000, 0xfac1c1bf )
  1782.     ROM_CONTINUE(                    0x00000, 0x10000 )
  1783.     ROM_LOAD(     "bk1-prg6.bin",    0x20000, 0x20000, 0x57a3ce42 )
  1784.     ROM_LOAD_HS( "bk1-prg5.bin",    0x40000, 0x10000, 0xdceed7cb )
  1785.     ROM_LOAD_HS( "bk1-prg4.bin",    0x60000, 0x10000, 0x96446d48 )
  1786.     ROM_LOAD(     "bk1-prg3.bin",    0x80000, 0x20000, 0xe608234f )
  1787.     ROM_LOAD_HS( "bk1-prg2.bin",    0xa0000, 0x10000, 0x7a686daa )
  1788.     ROM_LOAD_HS( "bk1-prg1.bin",    0xc0000, 0x10000, 0xd389d6d4 )
  1789.     ROM_LOAD(     "bk1-prg0.bin",    0xe0000, 0x20000, 0x4529c362 )
  1790.  
  1791.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1792.  
  1793.     ROM_REGION( 0x30000, REGION_CPU4 )        /* the MCU & voice */
  1794.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1795.     ROM_LOAD_HS( "bk1-voi0.bin",    0x10000, 0x10000, 0x008e290e )
  1796.  
  1797.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1798.     ROM_LOAD( "bk-chr8.bin",        0x00000, 0x20000, 0x6c8d4029 )
  1799.  
  1800.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1801.     ROM_LOAD( "bk-chr0.bin",        0x00000, 0x20000, 0x4e011058 )
  1802.     ROM_LOAD( "bk-chr1.bin",        0x20000, 0x20000, 0x496fcb9b )
  1803.     ROM_LOAD( "bk-chr2.bin",        0x40000, 0x20000, 0xdc812e28 )
  1804.     ROM_LOAD( "bk-chr3.bin",        0x60000, 0x20000, 0x2b6120f4 )
  1805.  
  1806.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1807.     ROM_LOAD( "bk-obj0.bin",        0x00000, 0x20000, 0x88c627c1 )
  1808.     /* obj1 */
  1809.     /* obj2 */
  1810.     ROM_LOAD( "bk-obj3.bin",        0x60000, 0x20000, 0xf7d1909a )
  1811.     ROM_LOAD( "bk-obj4.bin",        0x80000, 0x20000, 0x27ed1441 )
  1812.     ROM_LOAD( "bk-obj5.bin",        0xa0000, 0x20000, 0x790560c0 )
  1813.     ROM_LOAD( "bk-obj6.bin",        0xc0000, 0x20000, 0x2cd4d2ea )
  1814.     ROM_LOAD( "bk-obj7.bin",        0xe0000, 0x20000, 0x809aa0e6 )
  1815. ROM_END
  1816.  
  1817. /* World Court */
  1818. ROM_START( wldcourt )
  1819.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1820.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1821.  
  1822.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1823.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1824.  
  1825.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1826.     ROM_LOAD( "wc1-snd0.bin",        0x0c000, 0x10000, 0x17a6505d )
  1827.  
  1828.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1829.     ROM_LOAD_HS( "wc1-prg7.bin",    0x00000, 0x10000, 0x8a7c6cac )
  1830.     ROM_LOAD_HS( "wc1-prg6.bin",    0x20000, 0x10000, 0xe9216b9e )
  1831.  
  1832.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1833.  
  1834.     ROM_REGION( 0x50000, REGION_CPU4 )        /* the MCU & voice */
  1835.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1836.     ROM_LOAD_HS( "wc1-voi0.bin",    0x10000, 0x10000, 0xb57919f7 )
  1837.     ROM_LOAD( "wc1-voi1.bin",        0x30000, 0x20000, 0x97974b4b )
  1838.  
  1839.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1840.     ROM_LOAD( "wc1-chr8.bin",        0x00000, 0x20000, 0x23e1c399 )
  1841.  
  1842.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1843.     ROM_LOAD( "wc1-chr0.bin",        0x00000, 0x20000, 0x9fb07b9b )
  1844.     ROM_LOAD( "wc1-chr1.bin",        0x20000, 0x20000, 0x01bfbf60 )
  1845.     ROM_LOAD( "wc1-chr2.bin",        0x40000, 0x20000, 0x7e8acf45 )
  1846.     ROM_LOAD( "wc1-chr3.bin",        0x60000, 0x20000, 0x924e9c81 )
  1847.  
  1848.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1849.     ROM_LOAD( "wc1-obj0.bin",        0x00000, 0x20000, 0x70d562f8 )
  1850.     ROM_LOAD( "wc1-obj1.bin",        0x20000, 0x20000, 0xba8b034a )
  1851.     ROM_LOAD( "wc1-obj2.bin",        0x40000, 0x20000, 0xc2bd5f0f )
  1852.     ROM_LOAD( "wc1-obj3.bin",        0x60000, 0x10000, 0x1aa2dbc8 )
  1853. ROM_END
  1854.  
  1855. /* Splatter House */
  1856. ROM_START( splatter )
  1857.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1858.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1859.  
  1860.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1861.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1862.  
  1863.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1864.     ROM_LOAD( "sound0",             0x0c000, 0x10000, 0x90abd4ad )
  1865.     ROM_LOAD( "sound1",             0x1c000, 0x10000, 0x8ece9e0a )
  1866.  
  1867.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1868.     ROM_LOAD_HS( "prg7",            0x00000, 0x10000, 0x24c8cbd7 )
  1869.     ROM_LOAD_HS( "prg6",            0x20000, 0x10000, 0x97a3e664 )
  1870.     ROM_LOAD_HS( "prg5",            0x40000, 0x10000, 0x0187de9a )
  1871.     ROM_LOAD_HS( "prg4",            0x60000, 0x10000, 0x350dee5b )
  1872.     ROM_LOAD_HS( "prg3",            0x80000, 0x10000, 0x955ce93f )
  1873.     ROM_LOAD_HS( "prg2",            0xa0000, 0x10000, 0x434dbe7d )
  1874.     ROM_LOAD_HS( "prg1",            0xc0000, 0x10000, 0x7a3efe09 )
  1875.     ROM_LOAD_HS( "prg0",            0xe0000, 0x10000, 0x4e07e6d9 )
  1876.  
  1877.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1878.  
  1879.     ROM_REGION( 0x90000, REGION_CPU4 )        /* the MCU & voice */
  1880.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1881.     ROM_LOAD( "voice0",             0x20000, 0x10000, 0x2199cb66 )
  1882.     ROM_CONTINUE(                    0x10000, 0x10000 )
  1883.     ROM_LOAD( "voice1",             0x30000, 0x20000, 0x9b6472af )
  1884.     ROM_LOAD( "voice2",             0x50000, 0x20000, 0x25ea75b6 )
  1885.     ROM_LOAD( "voice3",             0x70000, 0x20000, 0x5eebcdb4 )
  1886.  
  1887.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1888.     ROM_LOAD( "chr8",                0x00000, 0x20000, 0x321f483b )
  1889.  
  1890.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1891.     ROM_LOAD( "chr0",                0x00000, 0x20000, 0x4dd2ef05 )
  1892.     ROM_LOAD( "chr1",                0x20000, 0x20000, 0x7a764999 )
  1893.     ROM_LOAD( "chr2",                0x40000, 0x20000, 0x6e6526ee )
  1894.     ROM_LOAD( "chr3",                0x60000, 0x20000, 0x8d05abdb )
  1895.     ROM_LOAD( "chr4",                0x80000, 0x20000, 0x1e1f8488 )
  1896.     ROM_LOAD( "chr5",                0xa0000, 0x20000, 0x684cf554 )
  1897.  
  1898.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1899.     ROM_LOAD( "obj0",                0x00000, 0x20000, 0x1cedbbae )
  1900.     ROM_LOAD( "obj1",                0x20000, 0x20000, 0xe56e91ee )
  1901.     ROM_LOAD( "obj2",                0x40000, 0x20000, 0x3dfb0230 )
  1902.     ROM_LOAD( "obj3",                0x60000, 0x20000, 0xe4e5a581 )
  1903.     ROM_LOAD( "obj4",                0x80000, 0x20000, 0xb2422182 )
  1904.     ROM_LOAD( "obj5",                0xa0000, 0x20000, 0x24d0266f )
  1905.     ROM_LOAD( "obj6",                0xc0000, 0x20000, 0x80830b0e )
  1906.     ROM_LOAD( "obj7",                0xe0000, 0x20000, 0x08b1953a )
  1907. ROM_END
  1908.  
  1909. /* Face Off */
  1910. ROM_START( faceoff )
  1911.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1912.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1913.  
  1914.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1915.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1916.  
  1917.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1918.     ROM_LOAD( "fo1-s0.bin",         0x0c000, 0x10000, 0x9a00d97d )
  1919.  
  1920.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1921.     ROM_LOAD_HS( "fo1-p7.bin",        0x00000, 0x10000, 0x6791d221 )
  1922.     ROM_LOAD_HS( "fo1-p6.bin",        0x20000, 0x10000, 0xa48ee82b )
  1923.  
  1924.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1925.  
  1926.     ROM_REGION( 0x50000, REGION_CPU4 )        /* the MCU & voice */
  1927.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1928.     ROM_LOAD_HS( "fo1-v0.bin",        0x10000, 0x10000, 0xe6edf63e )
  1929.     ROM_LOAD_HS( "fo1-v1.bin",        0x30000, 0x10000, 0x132a5d90 )
  1930.  
  1931.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1932.     ROM_LOAD( "fo1-c8.bin",         0x00000, 0x10000, 0xd397216c )
  1933.  
  1934.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1935.     ROM_LOAD( "fo1-c0.bin",         0x00000, 0x20000, 0x27884ac0 )
  1936.     ROM_LOAD( "fo1-c1.bin",         0x20000, 0x20000, 0x4d423499 )
  1937.     ROM_LOAD( "fo1-c2.bin",         0x40000, 0x20000, 0xd62d86f1 )
  1938.     ROM_LOAD( "fo1-c3.bin",         0x60000, 0x20000, 0xc2a08694 )
  1939.  
  1940.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1941.     ROM_LOAD( "fo1-o0.bin",         0x00000, 0x20000, 0x41af669d )
  1942.     ROM_LOAD( "fo1-o1.bin",         0x20000, 0x20000, 0xad5fbaa7 )
  1943.     ROM_LOAD( "fo1-o2.bin",         0x40000, 0x20000, 0xc1f7eb52 )
  1944.     ROM_LOAD( "fo1-o3.bin",         0x60000, 0x20000, 0xaa95d2e0 )
  1945.     ROM_LOAD( "fo1-o4.bin",         0x80000, 0x20000, 0x985f04c7 )
  1946. ROM_END
  1947.  
  1948. /* Rompers */
  1949. ROM_START( rompers )
  1950.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1951.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1952.  
  1953.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1954.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1955.  
  1956.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  1957.     ROM_LOAD( "rp1-snd0.bin",        0x0c000, 0x10000, 0xc7c8d649 )
  1958.  
  1959.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  1960.     ROM_LOAD_HS( "rp1-prg7.bin",    0x00000, 0x10000, 0x49d057e2 )
  1961.     ROM_LOAD_HS( "rp1-prg6.bin",    0x20000, 0x10000, 0x80821065 )
  1962.     ROM_LOAD_HS( "rp1-prg5.bin",    0x40000, 0x10000, 0x98bd4133 )
  1963.     ROM_LOAD_HS( "rp1-prg4.bin",    0x60000, 0x10000, 0x0918f06d )
  1964.  
  1965.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  1966.  
  1967.     ROM_REGION( 0x30000, REGION_CPU4 )        /* the MCU & voice */
  1968.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  1969.     ROM_LOAD( "rp1-voi0.bin",        0x20000, 0x10000, 0x11caef7e )
  1970.     ROM_CONTINUE(                    0x10000, 0x10000 )
  1971.  
  1972.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  1973.     ROM_LOAD( "rp1-chr8.bin",        0x00000, 0x10000, 0x69cfe46a )
  1974.  
  1975.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  1976.     ROM_LOAD( "rp1-chr0.bin",        0x00000, 0x20000, 0x41b10ef3 )
  1977.     ROM_LOAD( "rp1-chr1.bin",        0x20000, 0x20000, 0xc18cd24e )
  1978.     ROM_LOAD( "rp1-chr2.bin",        0x40000, 0x20000, 0x6c9a3c79 )
  1979.     ROM_LOAD( "rp1-chr3.bin",        0x60000, 0x20000, 0x473aa788 )
  1980.  
  1981.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  1982.     ROM_LOAD( "rp1-obj0.bin",        0x00000, 0x20000, 0x1dcbf8bb )
  1983.     ROM_LOAD( "rp1-obj1.bin",        0x20000, 0x20000, 0xcb98e273 )
  1984.     ROM_LOAD( "rp1-obj2.bin",        0x40000, 0x20000, 0x6ebd191e )
  1985.     ROM_LOAD( "rp1-obj3.bin",        0x60000, 0x20000, 0x7c9828a1 )
  1986.     ROM_LOAD( "rp1-obj4.bin",        0x80000, 0x20000, 0x0348220b )
  1987.     ROM_LOAD( "rp1-obj5.bin",        0xa0000, 0x10000, 0x9e2ba243 )
  1988.     ROM_LOAD( "rp1-obj6.bin",        0xc0000, 0x10000, 0x6bf2aca6 )
  1989. ROM_END
  1990.  
  1991. /* Rompers (old version) */
  1992. ROM_START( romperso )
  1993.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  1994.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1995.  
  1996.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  1997.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  1998.  
  1999.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  2000.     ROM_LOAD( "rp1-snd0.bin",        0x0c000, 0x10000, 0xc7c8d649 )
  2001.  
  2002.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  2003.     ROM_LOAD_HS( "rp1-p7.bin",        0x00000, 0x10000, 0x8d49f28a )
  2004.     ROM_LOAD_HS( "rp1-p6.bin",        0x20000, 0x10000, 0xfc183345 )
  2005.     ROM_LOAD_HS( "rp1-prg5.bin",    0x40000, 0x10000, 0x98bd4133 )
  2006.     ROM_LOAD_HS( "rp1-prg4.bin",    0x60000, 0x10000, 0x0918f06d )
  2007.  
  2008.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  2009.  
  2010.     ROM_REGION( 0x30000, REGION_CPU4 )        /* the MCU & voice */
  2011.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  2012.     ROM_LOAD( "rp1-voi0.bin",        0x20000, 0x10000, 0x11caef7e )
  2013.     ROM_CONTINUE(                    0x10000, 0x10000 )
  2014.  
  2015.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  2016.     ROM_LOAD( "rp1-chr8.bin",        0x00000, 0x10000, 0x69cfe46a )
  2017.  
  2018.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  2019.     ROM_LOAD( "rp1-chr0.bin",        0x00000, 0x20000, 0x41b10ef3 )
  2020.     ROM_LOAD( "rp1-chr1.bin",        0x20000, 0x20000, 0xc18cd24e )
  2021.     ROM_LOAD( "rp1-chr2.bin",        0x40000, 0x20000, 0x6c9a3c79 )
  2022.     ROM_LOAD( "rp1-chr3.bin",        0x60000, 0x20000, 0x473aa788 )
  2023.  
  2024.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  2025.     ROM_LOAD( "rp1-obj0.bin",        0x00000, 0x20000, 0x1dcbf8bb )
  2026.     ROM_LOAD( "rp1-obj1.bin",        0x20000, 0x20000, 0xcb98e273 )
  2027.     ROM_LOAD( "rp1-obj2.bin",        0x40000, 0x20000, 0x6ebd191e )
  2028.     ROM_LOAD( "rp1-obj3.bin",        0x60000, 0x20000, 0x7c9828a1 )
  2029.     ROM_LOAD( "rp1-obj4.bin",        0x80000, 0x20000, 0x0348220b )
  2030.     ROM_LOAD( "rp1-obj5.bin",        0xa0000, 0x10000, 0x9e2ba243 )
  2031.     ROM_LOAD( "rp1-obj6.bin",        0xc0000, 0x10000, 0x6bf2aca6 )
  2032. ROM_END
  2033.  
  2034. /* Blast Off */
  2035. ROM_START( blastoff )
  2036.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  2037.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2038.  
  2039.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  2040.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2041.  
  2042.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  2043.     ROM_LOAD( "bo1-snd0.bin",        0x0c000, 0x10000, 0x2ecab76e )
  2044.     ROM_LOAD( "bo1-snd1.bin",        0x1c000, 0x10000, 0x048a6af1 )
  2045.  
  2046.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  2047.     ROM_LOAD( "bo1prg7b.bin",        0x10000, 0x10000, 0xb630383c )
  2048.     ROM_CONTINUE(                    0x00000, 0x10000 )
  2049.     ROM_LOAD( "bo1-prg6.bin",        0x20000, 0x20000, 0xd60da63e )
  2050.  
  2051.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  2052.  
  2053.     ROM_REGION( 0x70000, REGION_CPU4 )        /* the MCU & voice */
  2054.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  2055.     ROM_LOAD( "bo1-voi0.bin",        0x20000, 0x10000, 0x47065e18 )
  2056.     ROM_CONTINUE(                    0x10000, 0x10000 )
  2057.     ROM_LOAD( "bo1-voi1.bin",        0x30000, 0x20000, 0x0308b18e )
  2058.     ROM_LOAD( "bo1-voi2.bin",        0x50000, 0x20000, 0x88cab230 )
  2059.  
  2060.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  2061.     ROM_LOAD( "bo1-chr8.bin",        0x00000, 0x20000, 0xe8b5f2d4 )
  2062.  
  2063.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  2064.     ROM_LOAD( "bo1-chr0.bin",        0x00000, 0x20000, 0xbdc0afb5 )
  2065.     ROM_LOAD( "bo1-chr1.bin",        0x20000, 0x20000, 0x963d2639 )
  2066.     ROM_LOAD( "bo1-chr2.bin",        0x40000, 0x20000, 0xacdb6894 )
  2067.     ROM_LOAD( "bo1-chr3.bin",        0x60000, 0x20000, 0x214ec47f )
  2068.     ROM_LOAD( "bo1-chr4.bin",        0x80000, 0x20000, 0x08397583 )
  2069.     ROM_LOAD( "bo1-chr5.bin",        0xa0000, 0x20000, 0x20402429 )
  2070.     ROM_LOAD( "bo1-chr7.bin",        0xe0000, 0x20000, 0x4c5c4603 )
  2071.  
  2072.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  2073.     ROM_LOAD( "bo1-obj0.bin",        0x00000, 0x20000, 0xb3308ae7 )
  2074.     ROM_LOAD( "bo1-obj1.bin",        0x20000, 0x20000, 0xc9c93c47 )
  2075.     ROM_LOAD( "bo1-obj2.bin",        0x40000, 0x20000, 0xeef77527 )
  2076.     ROM_LOAD( "bo1-obj3.bin",        0x60000, 0x20000, 0xe3d9ed58 )
  2077.     ROM_LOAD( "bo1-obj4.bin",        0x80000, 0x20000, 0xc2c1b9cb )
  2078. ROM_END
  2079.  
  2080. /* World Stadium '89 */
  2081. ROM_START( ws89 )
  2082.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  2083.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2084.  
  2085.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  2086.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2087.  
  2088.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  2089.     ROM_LOAD( "w89-s0.bin",         0x0c000, 0x10000, 0x52b84d5a )
  2090.     ROM_LOAD( "ws1-s1.bin",         0x1c000, 0x10000, 0x31bf74c1 )
  2091.  
  2092.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  2093.     ROM_LOAD_HS( "w89-p7.bin",        0x00000, 0x10000, 0x611ed964 )
  2094.     ROM_LOAD_HS( "w89-p2.bin",        0xa0000, 0x10000, 0x522e5441 )
  2095.     ROM_LOAD_HS( "w89-p1.bin",        0xc0000, 0x10000, 0x7ad8768f )
  2096.     ROM_LOAD_HS( "ws1-p0.bin",        0xe0000, 0x10000, 0xb0234298 )
  2097.  
  2098.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  2099.  
  2100.     ROM_REGION( 0x50000, REGION_CPU4 )        /* the MCU & voice */
  2101.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  2102.     ROM_LOAD_HS( "ws1-v0.bin",        0x10000, 0x10000, 0xf6949199 )
  2103.     ROM_LOAD( "ws1-v1.bin",         0x30000, 0x20000, 0x210e2af9 )
  2104.  
  2105.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  2106.     ROM_LOAD( "ws1-c8.bin",         0x00000, 0x20000, 0xd1897b9b )
  2107.  
  2108.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  2109.     ROM_LOAD( "ws1-c0.bin",         0x00000, 0x20000, 0x3e3e96b4 )
  2110.     ROM_LOAD( "ws1-c1.bin",         0x20000, 0x20000, 0x897dfbc1 )
  2111.     ROM_LOAD( "ws1-c2.bin",         0x40000, 0x20000, 0xe142527c )
  2112.     ROM_LOAD( "ws1-c3.bin",         0x60000, 0x20000, 0x907d4dc8 )
  2113.     ROM_LOAD( "ws1-c4.bin",         0x80000, 0x20000, 0xafb11e17 )
  2114.     ROM_LOAD( "ws1-c6.bin",         0xc0000, 0x20000, 0xa16a17c2 )
  2115.  
  2116.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  2117.     ROM_LOAD( "ws1-o0.bin",         0x00000, 0x20000, 0x12dc83a6 )
  2118.     ROM_LOAD( "ws1-o1.bin",         0x20000, 0x20000, 0x68290a46 )
  2119.     ROM_LOAD( "ws1-o2.bin",         0x40000, 0x20000, 0xcd5ba55d )
  2120.     ROM_LOAD_HS( "w89-o3.bin",        0x60000, 0x10000, 0x8ee76105 )
  2121. ROM_END
  2122.  
  2123. /* Dangerous Seed */
  2124. ROM_START( dangseed )
  2125.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  2126.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2127.  
  2128.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  2129.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2130.  
  2131.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  2132.     ROM_LOAD( "dr1-snd0.bin",        0x0c000, 0x20000, 0xbcbbb21d )
  2133.  
  2134.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  2135.     ROM_LOAD( "dr1-prg7.bin",        0x10000, 0x10000, 0xd7d2f653 )
  2136.     ROM_CONTINUE(                    0x00000, 0x10000 )
  2137.     ROM_LOAD_HS( "dr1-prg6.bin",    0x20000, 0x10000, 0xcc68262b )
  2138.     ROM_LOAD( "dr1-prg5.bin",        0x40000, 0x20000, 0x7986bbdd )
  2139.  
  2140.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  2141.  
  2142.     ROM_REGION( 0x30000, REGION_CPU4 )        /* the MCU & voice */
  2143.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  2144.     ROM_LOAD( "dr1-voi0.bin",        0x20000, 0x10000, 0xde4fdc0e )
  2145.     ROM_CONTINUE(                    0x10000, 0x10000 )
  2146.  
  2147.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  2148.     ROM_LOAD( "dr1-chr8.bin",        0x00000, 0x20000, 0x0fbaa10e )
  2149.  
  2150.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  2151.     ROM_LOAD( "dr1-chr0.bin",        0x00000, 0x20000, 0x419bacc7 )
  2152.     ROM_LOAD( "dr1-chr1.bin",        0x20000, 0x20000, 0x55ce77e1 )
  2153.     ROM_LOAD( "dr1-chr2.bin",        0x40000, 0x20000, 0x6f913419 )
  2154.     ROM_LOAD( "dr1-chr3.bin",        0x60000, 0x20000, 0xfe1f1a25 )
  2155.     ROM_LOAD( "dr1-chr4.bin",        0x80000, 0x20000, 0xc34471bc )
  2156.     ROM_LOAD( "dr1-chr5.bin",        0xa0000, 0x20000, 0x715c0720 )
  2157.     ROM_LOAD( "dr1-chr6.bin",        0xc0000, 0x20000, 0x5c1b71fa )
  2158.  
  2159.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  2160.     ROM_LOAD( "dr1-obj0.bin",        0x00000, 0x20000, 0xabb95644 )
  2161.     ROM_LOAD( "dr1-obj1.bin",        0x20000, 0x20000, 0x24d6db51 )
  2162.     ROM_LOAD( "dr1-obj2.bin",        0x40000, 0x20000, 0x7e3a78c0 )
  2163. ROM_END
  2164.  
  2165. /* World Stadium '90 */
  2166. ROM_START( ws90 )
  2167.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  2168.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2169.  
  2170.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  2171.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2172.  
  2173.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  2174.     ROM_LOAD( "w89-s0.bin",         0x0c000, 0x10000, 0x52b84d5a )
  2175.     ROM_LOAD( "ws1-s1.bin",         0x1c000, 0x10000, 0x31bf74c1 )
  2176.  
  2177.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  2178.     ROM_LOAD_HS( "w90-p7.bin",        0x00000, 0x10000, 0x37ae1b25 )
  2179.     ROM_LOAD_HS( "w90-p2.bin",        0xa0000, 0x10000, 0xb9e98e2f )
  2180.     ROM_LOAD_HS( "w89-p1.bin",        0xc0000, 0x10000, 0x7ad8768f )
  2181.     ROM_LOAD_HS( "ws1-p0.bin",        0xe0000, 0x10000, 0xb0234298 )
  2182.  
  2183.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  2184.  
  2185.     ROM_REGION( 0x50000, REGION_CPU4 )        /* the MCU & voice */
  2186.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  2187.     ROM_LOAD_HS( "ws1-v0.bin",        0x10000, 0x10000, 0xf6949199 )
  2188.     ROM_LOAD( "ws1-v1.bin",         0x30000, 0x20000, 0x210e2af9 )
  2189.  
  2190.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  2191.     ROM_LOAD( "ws1-c8.bin",         0x00000, 0x20000, 0xd1897b9b )
  2192.  
  2193.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  2194.     ROM_LOAD( "ws1-c0.bin",         0x00000, 0x20000, 0x3e3e96b4 )
  2195.     ROM_LOAD( "ws1-c1.bin",         0x20000, 0x20000, 0x897dfbc1 )
  2196.     ROM_LOAD( "ws1-c2.bin",         0x40000, 0x20000, 0xe142527c )
  2197.     ROM_LOAD( "ws1-c3.bin",         0x60000, 0x20000, 0x907d4dc8 )
  2198.     ROM_LOAD( "ws1-c4.bin",         0x80000, 0x20000, 0xafb11e17 )
  2199.     ROM_LOAD( "ws1-c6.bin",         0xc0000, 0x20000, 0xa16a17c2 )
  2200.  
  2201.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  2202.     ROM_LOAD( "ws1-o0.bin",         0x00000, 0x20000, 0x12dc83a6 )
  2203.     ROM_LOAD( "ws1-o1.bin",         0x20000, 0x20000, 0x68290a46 )
  2204.     ROM_LOAD( "ws1-o2.bin",         0x40000, 0x20000, 0xcd5ba55d )
  2205.     ROM_LOAD_HS( "w90-o3.bin",        0x60000, 0x10000, 0x7d0b8961 )
  2206. ROM_END
  2207.  
  2208. /* Pistol Daimyo no Bouken */
  2209. ROM_START( pistoldm )
  2210.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  2211.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2212.  
  2213.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  2214.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2215.  
  2216.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  2217.     ROM_LOAD( "pd1-snd0.bin",        0x0c000, 0x20000, 0x026da54e )
  2218.  
  2219.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  2220.     ROM_LOAD( "pd1prg7b.bin",        0x10000, 0x10000, 0x7189b797 )
  2221.     ROM_CONTINUE(                    0x00000, 0x10000 )
  2222.     ROM_LOAD( "pd1-prg0.bin",        0xe0000, 0x20000, 0x9db9b89c )
  2223.  
  2224.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  2225.  
  2226.     ROM_REGION( 0x50000, REGION_CPU4 )        /* the MCU & voice */
  2227.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  2228.     ROM_LOAD( "pd-voi0.bin",        0x20000, 0x10000, 0xad1b8128 )
  2229.     ROM_CONTINUE(                    0x10000, 0x10000 )
  2230.     ROM_LOAD( "pd-voi1.bin",        0x30000, 0x20000, 0x2871c494 )
  2231.  
  2232.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  2233.     ROM_LOAD( "pd-chr8.bin",        0x00000, 0x20000, 0xa5f516db )
  2234.  
  2235.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  2236.     ROM_LOAD( "pd-chr0.bin",        0x00000, 0x20000, 0xadbbaf5c )
  2237.     ROM_LOAD( "pd-chr1.bin",        0x20000, 0x20000, 0xb4e4f554 )
  2238.     ROM_LOAD( "pd-chr2.bin",        0x40000, 0x20000, 0x84592540 )
  2239.     ROM_LOAD( "pd-chr3.bin",        0x60000, 0x20000, 0x450bdaa9 )
  2240.  
  2241.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  2242.     ROM_LOAD( "pd-obj0.bin",        0x00000, 0x20000, 0x7269821d )
  2243.     ROM_LOAD( "pd-obj1.bin",        0x20000, 0x20000, 0x4f9738e5 )
  2244.     ROM_LOAD( "pd-obj2.bin",        0x40000, 0x20000, 0x33208776 )
  2245.     ROM_LOAD( "pd-obj3.bin",        0x60000, 0x20000, 0x0dbd54ef )
  2246.     ROM_LOAD( "pd-obj4.bin",        0x80000, 0x20000, 0x58e838e2 )
  2247.     ROM_LOAD( "pd-obj5.bin",        0xa0000, 0x20000, 0x414f9a9d )
  2248.     ROM_LOAD( "pd-obj6.bin",        0xc0000, 0x20000, 0x91b4e6e0 )
  2249.     ROM_LOAD( "pd-obj7.bin",        0xe0000, 0x20000, 0x00d4a8f0 )
  2250. ROM_END
  2251.  
  2252. /* Souko Ban Deluxe */
  2253. ROM_START( soukobdx )
  2254.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  2255.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2256.  
  2257.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  2258.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2259.  
  2260.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  2261.     ROM_LOAD( "sb1-snd0.bin",        0x0c000, 0x10000, 0xbf46a106 )
  2262.  
  2263.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  2264.     ROM_LOAD_HS( "sb1-prg7.bin",    0x00000, 0x10000, 0xc3bd418a )
  2265.     ROM_LOAD( "sb1-prg1.bin",        0xc0000, 0x20000, 0x5d1fdd94 )
  2266.     ROM_LOAD( "sb1-prg0.bin",        0xe0000, 0x20000, 0x8af8cb73 )
  2267.  
  2268.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  2269.  
  2270.     ROM_REGION( 0x30000, REGION_CPU4 )        /* the MCU & voice */
  2271.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  2272.     ROM_LOAD_HS( "sb1-voi0.bin",    0x10000, 0x10000, 0x63d9cedf )
  2273.  
  2274.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  2275.     ROM_LOAD( "sb1-chr8.bin",        0x00000, 0x10000, 0x5692b297 )
  2276.  
  2277.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  2278.     ROM_LOAD( "sb1-chr0.bin",        0x00000, 0x20000, 0x267f1331 )
  2279.     ROM_LOAD( "sb1-chr1.bin",        0x20000, 0x20000, 0xe5ff61ad )
  2280.     ROM_LOAD( "sb1-chr2.bin",        0x40000, 0x20000, 0x099b746b )
  2281.     ROM_LOAD( "sb1-chr3.bin",        0x60000, 0x20000, 0x1551bb7c )
  2282.  
  2283.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  2284.     ROM_LOAD( "sb1-obj0.bin",        0x00000, 0x10000, 0xed810da4 )
  2285. ROM_END
  2286.  
  2287. /* Puzzle Club */
  2288. ROM_START( puzlclub )
  2289.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  2290.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2291.  
  2292.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  2293.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2294.  
  2295.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  2296.     ROM_LOAD( "pc1_s0.bin",         0x0c000, 0x10000, 0x44737c02 )
  2297.  
  2298.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  2299.     ROM_LOAD( "pc1_p7.bin",         0x10000, 0x10000, 0xf0638260 )
  2300.     ROM_LOAD( "pc1_p1.bin",         0xc0000, 0x10000, 0xdfd9108a )
  2301.     ROM_LOAD( "pc1_p0.bin",         0xe0000, 0x10000, 0x2db477c8 )
  2302.  
  2303.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  2304.  
  2305.     ROM_REGION( 0x30000, REGION_CPU4 )        /* the MCU & voice */
  2306.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  2307.     /* no voices */
  2308.  
  2309.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  2310.     ROM_LOAD( "pc1-c8.bin",         0x00000, 0x20000, 0x4e196bcd )
  2311.  
  2312.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  2313.     ROM_LOAD( "pc1-c0.bin",         0x00000, 0x20000, 0xad7b134e )
  2314.     ROM_LOAD( "pc1-c1.bin",         0x20000, 0x20000, 0x10cb3207 )
  2315.     ROM_LOAD( "pc1-c2.bin",         0x40000, 0x20000, 0xd98d2c8f )
  2316.     ROM_LOAD( "pc1-c3.bin",         0x60000, 0x20000, 0x91a61d96 )
  2317.     ROM_LOAD( "pc1-c4.bin",         0x80000, 0x20000, 0xf1c95296 )
  2318.     ROM_LOAD( "pc1-c5.bin",         0xa0000, 0x20000, 0xbc443c27 )
  2319.     ROM_LOAD( "pc1-c6.bin",         0xc0000, 0x20000, 0xec0a3dc5 )
  2320.  
  2321.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  2322.     /* no sprites */
  2323. ROM_END
  2324.  
  2325. /* Tank Force */
  2326. ROM_START( tankfrce )
  2327.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  2328.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2329.  
  2330.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  2331.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2332.  
  2333.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  2334.     ROM_LOAD( "tf1-snd0.bin",        0x0c000, 0x20000, 0x4d9cf7aa )
  2335.  
  2336.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  2337.     ROM_LOAD( "tf1prg7.bin",        0x10000, 0x10000, 0x2ec28a87 )
  2338.     ROM_CONTINUE(                    0x00000, 0x10000 )
  2339.     ROM_LOAD( "tf1-prg1.bin",        0xc0000, 0x20000, 0x4a8bb251 )
  2340.     ROM_LOAD( "tf1-prg0.bin",        0xe0000, 0x20000, 0x2ae4b9eb )
  2341.  
  2342.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  2343.  
  2344.     ROM_REGION( 0x50000, REGION_CPU4 )        /* the MCU & voice */
  2345.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  2346.     ROM_LOAD( "tf1-voi0.bin",        0x20000, 0x10000, 0xf542676a )
  2347.     ROM_CONTINUE(                    0x10000, 0x10000 )
  2348.     ROM_LOAD( "tf1-voi1.bin",        0x30000, 0x20000, 0x615d09cd )
  2349.  
  2350.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  2351.     ROM_LOAD( "tf1-chr8.bin",        0x00000, 0x20000, 0x7d53b31e )
  2352.  
  2353.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  2354.     ROM_LOAD( "tf1-chr0.bin",        0x00000, 0x20000, 0x9e91794e )
  2355.     ROM_LOAD( "tf1-chr1.bin",        0x20000, 0x20000, 0x76e1bc56 )
  2356.     ROM_LOAD( "tf1-chr2.bin",        0x40000, 0x20000, 0xfcb645d9 )
  2357.     ROM_LOAD( "tf1-chr3.bin",        0x60000, 0x20000, 0xa8dbf080 )
  2358.     ROM_LOAD( "tf1-chr4.bin",        0x80000, 0x20000, 0x51fedc8c )
  2359.     ROM_LOAD( "tf1-chr5.bin",        0xa0000, 0x20000, 0xe6c6609a )
  2360.  
  2361.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  2362.     ROM_LOAD( "tf1-obj0.bin",        0x00000, 0x20000, 0x4bedd51a )
  2363.     ROM_LOAD( "tf1-obj1.bin",        0x20000, 0x20000, 0xdf674d6d )
  2364. ROM_END
  2365.  
  2366. /* Tank Force (Japan) */
  2367. ROM_START( tankfrcj )
  2368.     ROM_REGION( 0x10000, REGION_CPU1 )        /* 64k for the main cpu */
  2369.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2370.  
  2371.     ROM_REGION( 0x10000, REGION_CPU2 )        /* 64k for the sub cpu */
  2372.     /* Nothing loaded here. Bankswitching makes sure this gets the necessary code */
  2373.  
  2374.     ROM_REGION( 0x2c000, REGION_CPU3 )        /* 176k for the sound cpu */
  2375.     ROM_LOAD( "tf1-snd0.bin",        0x0c000, 0x20000, 0x4d9cf7aa )
  2376.  
  2377.     ROM_REGION( 0x100000, REGION_USER1 )    /* 1M for ROMs */
  2378.     ROM_LOAD( "tf1-prg7.bin",        0x10000, 0x10000, 0x9dfa0dd5 )
  2379.     ROM_CONTINUE(                    0x00000, 0x10000 )
  2380.     ROM_LOAD( "tf1-prg1.bin",        0xc0000, 0x20000, 0x4a8bb251 )
  2381.     ROM_LOAD( "tf1-prg0.bin",        0xe0000, 0x20000, 0x2ae4b9eb )
  2382.  
  2383.     ROM_REGION( 0x14000, REGION_USER2 )     /* 80k for RAM */
  2384.  
  2385.     ROM_REGION( 0x50000, REGION_CPU4 )        /* the MCU & voice */
  2386.     ROM_LOAD( "ns1-mcu.bin",        0x0f000, 0x01000, 0xffb5c0bd )
  2387.     ROM_LOAD( "tf1-voi0.bin",        0x20000, 0x10000, 0xf542676a )
  2388.     ROM_CONTINUE(                    0x10000, 0x10000 )
  2389.     ROM_LOAD( "tf1-voi1.bin",        0x30000, 0x20000, 0x615d09cd )
  2390.  
  2391.     ROM_REGION( 0x20000, REGION_GFX1 | REGIONFLAG_DISPOSE )  /* character mask */
  2392.     ROM_LOAD( "tf1-chr8.bin",        0x00000, 0x20000, 0x7d53b31e )
  2393.  
  2394.     ROM_REGION( 0x100000, REGION_GFX2 | REGIONFLAG_DISPOSE ) /* characters */
  2395.     ROM_LOAD( "tf1-chr0.bin",        0x00000, 0x20000, 0x9e91794e )
  2396.     ROM_LOAD( "tf1-chr1.bin",        0x20000, 0x20000, 0x76e1bc56 )
  2397.     ROM_LOAD( "tf1-chr2.bin",        0x40000, 0x20000, 0xfcb645d9 )
  2398.     ROM_LOAD( "tf1-chr3.bin",        0x60000, 0x20000, 0xa8dbf080 )
  2399.     ROM_LOAD( "tf1-chr4.bin",        0x80000, 0x20000, 0x51fedc8c )
  2400.     ROM_LOAD( "tf1-chr5.bin",        0xa0000, 0x20000, 0xe6c6609a )
  2401.  
  2402.     ROM_REGION( 0x100000, REGION_GFX3 | REGIONFLAG_DISPOSE ) /* sprites */
  2403.     ROM_LOAD( "tf1-obj0.bin",        0x00000, 0x20000, 0x4bedd51a )
  2404.     ROM_LOAD( "tf1-obj1.bin",        0x20000, 0x20000, 0xdf674d6d )
  2405. ROM_END
  2406.  
  2407.  
  2408.  
  2409. //    YEAR, NAME,     PARENT,   MACHINE, INPUT,   INIT,     MONITOR,      COMPANY, FULLNAME
  2410. GAME( 1987, shadowld, 0,        ns1,     ns1,     shadowld, ROT0_16BIT,   "Namco", "Shadow Land" )
  2411. GAME( 1987, youkaidk, shadowld, ns1,     ns1,     shadowld, ROT0_16BIT,   "Namco", "Yokai Douchuuki (Japan new version)" )
  2412. GAME( 1987, yokaidko, shadowld, ns1,     ns1,     shadowld, ROT0_16BIT,   "Namco", "Yokai Douchuuki (Japan old version)" )
  2413. GAME( 1987, dspirit,  0,        ns1,     dspirit, dspirit,  ROT270,       "Namco", "Dragon Spirit (new version)" )
  2414. GAME( 1987, dspirito, dspirit,  ns1,     dspirit, dspirit,  ROT270,       "Namco", "Dragon Spirit (old version)" )
  2415. GAME( 1987, blazer,   0,        ns1,     ns1,     blazer,   ROT270,       "Namco", "Blazer (Japan)" )
  2416. GAME( 1987, quester,  0,        quester, quester, quester,  ROT270,       "Namco", "Quester (Japan)" )
  2417. GAME( 1987, pacmania, 0,        ns1,     ns1,     pacmania, ROT90_16BIT,  "Namco", "Pac-Mania" )
  2418. GAME( 1987, pacmanij, pacmania, ns1,     ns1,     pacmania, ROT270_16BIT, "Namco", "Pac-Mania (Japan)" )
  2419. GAME( 1987, galaga88, 0,        ns1,     ns1,     galaga88, ROT90_16BIT,  "Namco", "Galaga '88 (set 1)" )
  2420. GAME( 1987, galag88b, galaga88, ns1,     ns1,     galaga88, ROT90_16BIT,  "Namco", "Galaga '88 (set 2)" )
  2421. GAME( 1987, galag88j, galaga88, ns1,     ns1,     galaga88, ROT270_16BIT, "Namco", "Galaga '88 (Japan)" )
  2422. GAME( 1988, ws,       0,        ns1,     ns1,     ws,       ROT0,         "Namco", "World Stadium (Japan)" )
  2423. GAME( 1988, berabohm, 0,        ns1,     berabohm,berabohm, ROT0_16BIT,   "Namco", "Beraboh Man (Japan)" )
  2424. //GAME( 1988, alice,    0,        ns1,     ns1,     alice,    ROT0_16BIT,   "Namco", "Alice In Wonderland" )
  2425. GAME( 1988, mmaze,    0,        ns1,     ns1,     alice,    ROT0_16BIT,   "Namco", "Marchen Maze (Japan)" )
  2426. GAMEX(1988, bakutotu, 0,        ns1,     ns1,     bakutotu, ROT0,         "Namco", "Bakutotsu Kijuutei", GAME_NOT_WORKING )
  2427. GAME( 1988, wldcourt, 0,        ns1,     ns1,     wldcourt, ROT0,         "Namco", "World Court (Japan)" )
  2428. GAME( 1988, splatter, 0,        ns1,     ns1,     splatter, ROT0_16BIT,   "Namco", "Splatter House (Japan)" )
  2429. GAME( 1988, faceoff,  0,        faceoff, faceoff, faceoff,  ROT0,         "Namco", "Face Off (Japan)" )
  2430. GAME( 1989, rompers,  0,        ns1,     ns1,     rompers,  ROT270_16BIT, "Namco", "Rompers (Japan)" )
  2431. GAME( 1989, romperso, rompers,  ns1,     ns1,     rompers,  ROT270_16BIT, "Namco", "Rompers (Japan old version)" )
  2432. GAME( 1989, blastoff, 0,        ns1,     ns1,     blastoff, ROT270,       "Namco", "Blast Off (Japan)" )
  2433. GAME( 1989, ws89,     ws,       ns1,     ns1,     ws89,     ROT0,         "Namco", "World Stadium '89 (Japan)" )
  2434. GAME( 1989, dangseed, 0,        ns1,     ns1,     dangseed, ROT270_16BIT, "Namco", "Dangerous Seed (Japan)" )
  2435. GAME( 1990, ws90,     ws,       ns1,     ns1,     ws90,     ROT0,         "Namco", "World Stadium '90 (Japan)" )
  2436. GAME( 1990, pistoldm, 0,        ns1,     ns1,     pistoldm, ROT180,       "Namco", "Pistol Daimyo no Bouken (Japan)" )
  2437. GAME( 1990, soukobdx, 0,        ns1,     ns1,     soukobdx, ROT180_16BIT, "Namco", "Souko Ban Deluxe (Japan)" )
  2438. GAME( 1990, puzlclub, 0,        ns1,     ns1,     puzlclub, ROT270,       "Namco", "Puzzle Club (Japan prototype)" )
  2439. GAME( 1991, tankfrce, 0,        ns1,     ns1,     tankfrce, ROT180,       "Namco", "Tank Force (US)" )
  2440. GAME( 1991, tankfrcj, tankfrce, ns1,     ns1,     tankfrce, ROT180,       "Namco", "Tank Force (Japan)" )
  2441.